verplichte velden formulier

Status
Niet open voor verdere reacties.

oebiedoebie

Gebruiker
Lid geworden
13 nov 2007
Berichten
103
Ik heb een formulier gemaakt.
Werkt perfect.
Alleen nou zou ik willen dat er geen lege mail kunnen verstuur worden!
Weet iemand een oplossing heb al van alles geprobeer maar ik kom er niet uit!

Dit is mijn script:

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title></head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data">

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php">

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> <input type="text" name="name" size=50 maxlength=50><br /><br />

E-mailadres:<br /> <input type="text" name="email" size=50 maxlength=50><br /><br />

Bericht:<br /> <textarea rows="5" cols="38" name="bericht"></textarea></p>
<p align="center">

<input type="submit" value=" Verstuur ">

</p>

</form>

</body>

</html>

Alvast bedankt:thumb:
 
Je kan dat oplossen met een validateform.
Hieronder een vb van je input email adres, wanner je het veld verlaat zonder het int vullen krijg je een error " -name is required" datkan je dus op ieder veld toepassen.
Code:
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns="urn:schemas-microsoft-comfficeffice" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title>
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
    } if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data"> 

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php"> 

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> <input name="name" type="text" id="name" size=50 maxlength=50>
<br /><br /> 

E-mailadres:<br /> <input name="email" type="text" onBlur="MM_validateForm('name','','RisEmail');return document.MM_returnValue" size=50 maxlength=50>
<br /><br /> 

Bericht:<br /> <textarea rows="5" cols="38" name="bericht"></textarea></p>
<p align="center"> 

<input type="submit" value=" Verstuur "> 

</p>

</form>

</body>

</html>
Mvg
defietser
 
bedankt maar is eigenlijk niet wat ik zoek.

Want nu krijg je een melding dat je niet hebt ingevoerd.
Maar je kan hem wel verzenden.
En dat moet eigenlijk niet kunnen.
 
Sorry vergeten te zeggen dat als je die op de submit knop zet dan je die niet versturen.
Hier gekozen dat het email adres moet ingevuld worden, is het email adres niet ingevuld en klikt de submit button dan krijg je de foutmelding.
Code:
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns="urn:schemas-microsoft-comfficeffice" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title>
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
    } if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data"> 

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php"> 

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> <input name="name" type="text" id="name" size=50 maxlength=50>
<br /><br /> 

E-mailadres:<br /> <input name="email" type="text" id="email" size=50 maxlength=50>
<br /><br /> 

Bericht:<br /> <textarea rows="5" cols="38" name="bericht"></textarea></p>
<p align="center"> 

<input type="submit" onClick="MM_validateForm('email','','RisEmail');return document.MM_returnValue" value=" Verstuur "> 

</p>

</form>

</body>

</html>
even proberen
Mvg
defietser
 
Nog een klein vraagje,

Als ik nou bv ook de naam en andere dingen wil hebben dat die ingevuld moet zijn.
kan dat ook?
Wat moet ik dan veranderen?
Ben al aan het proberen geweest kom er niet uit.:confused:
 
Om het mezelf wat makkelijk te maken heb je hier een vb waarvan alle velden moeten worden ingevuld. Je kan ook in het script te tekst veranderen in het nederlands.
Code:
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns="urn:schemas-microsoft-comfficeffice" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title>
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' moet een email adres bevatten.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is vereist.\n'; }
    } if (errors) alert('De volgende fouten zijn gevonden:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data"> 

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php"> 

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> <input name="name" type="text" id="name" onBlur="MM_validateForm('name','','R');return document.MM_returnValue" size=50 maxlength=50>
<br /><br /> 

E-mailadres:<br /> <input name="email adres" type="text" id="email" onBlur="MM_validateForm('email','','R');return document.MM_returnValue" size=50 maxlength=50>
<br /><br /> 

Bericht:<br /> <textarea name="bericht" cols="38" rows="5" id="bericht" onBlur="MM_validateForm('bericht','','R');return document.MM_returnValue"></textarea>
</p>
<p align="center"> 

<input type="submit" onClick="MM_validateForm('email','','RisEmail');return document.MM_returnValue" value=" Verstuur "> 

</p>

</form>

</body>

</html>
Mvg
defietser
 
Leuk hoor, JavaScript, maar zodra iemand het uitzet kan diegene sturen wat ie wil..
 
Bij je internetopties JavaScript uitschakelen..
 
Hallo,

Ik kom er toch nog niet helemaal uit.
Ik heb nu adres en woonplaats bij gemaakt om te proberen.
Maar ik kom er niet uit.
Misschien zien jullie wat ik fout heb gedaan?!
Of hebben jullie een makkelijker manier??

Dit is mijn code:

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns="urn:schemas-microsoft-comfficeffice" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title>
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
if (document.getElementById){
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' moet een email adres bevatten.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is vereist.\n'; }
} if (errors) alert('De volgende fouten zijn gevonden:\n'+errors);
document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data">

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php">

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> <input name="name" type="text" id="name" onBlur="MM_validateForm('name','','R');return document.MM_returnValue" size=50 maxlength=50>
<br /><br />

E-mailadres:<br /> <input name="email adres" type="text" id="email" onBlur="MM_validateForm('email','','R');return document.MM_returnValue" size=50 maxlength=50>
<br />Adres: <br />
<input name="Adres" type="text" id="name0" onBlur="MM_validateForm('adres','','R');return document.MM_returnValue" size=50 maxlength=50>
<br /><br />

Woonplaats:<br />
<input name="woonplaats" type="text" id="email0" onBlur="MM_validateForm('woonplaats','','R');return document.MM_returnValue" size=50 maxlength=50>
</p>
<p align="center"><br />

Bericht:<br /> <textarea name="bericht" cols="38" rows="5" id="bericht" onBlur="MM_validateForm('bericht','','R');return document.MM_returnValue"></textarea>
</p>
<p align="center">

<input type="submit" onClick="MM_validateForm('email','adres','woonplaats',",'RisEmail');return document.MM_returnValue" value=" Verstuur ">

</p>

</form>

</body>

</html>

Alvast bedankt :cool:
 
Hoe wil je het nu hebben?
Dat alle velden moeten worden ingevuld + de submit knop of een of ander input veld +de submitknop
Mvg
defietser
 
Dat iedere veld in gevuld moet worden.
Zou fijn zijn.
En als ik een vakje wat je kan aanvinken ook aangevinkt moet worden voor verzenden!

Al vast bedankt
 
En als ik een vakje wat je kan aanvinken ook aangevinkt moet worden voor verzenden!
Die checkbox(vinkje) Wat voor een veld moet daarvoor worden ingevuld.
Nu wordt de submit knop gekoppeld aan al de inputvelden, als er een veld niet is ingevuld kan je niet verzenden.
Nu voor de checkbox moet je ook een veld kiezen die moet ingevuld worden om te kunnen aanvinken.
 
Als ik dit code gebruik dan als ik niets invul verstuur hij hem nog!
Het moet zo zijn dat alle velden ingevuld moet zijn.
En dat er vinkje aan gevinkt moet worden!

Alvast bedankt!!
 
Een checkbox of selectievakje gebruik je om individuele opties al dan niet aan te kruisen.
Dus ik weet niet waarvoor je dit selectievakje wilt gebruiken. Naast de knop versturen gebruik ik ook een knop annuleren.
Je wil een checkbox gebruiken maar waarvoor ik zie nergens een keuzeoptie staan.
Maak uw formulier zoals je het wil op je site dan plaats ik er wel de formuliervalidatie in.
Mvg
defietser
 
Hallo hallo,

Sorry voor de wat latere reactie.
maar dit zou mijn formulier moet worden.

CODE:

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title></head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1">

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php">

<p align="center">&nbsp;</p>
<p align="center">Naam: <br />
&nbsp;<input type="text" name="name" size=50 maxlength=50><br>
Adres:<br>
<input type="text" name="Adres" size="51"><br>
Postcode:<br>
<input type="text" name="Postcode" size="56"><br>
Woonplaats:<br>
<input type="text" name="Woonplaats" size="57"><br>
Telefoon nummer<br /><input type="text" name="Telefoonnummer" size="57"><br />

E-mailadres:<br />
&nbsp;<input type="text" name="email" size=56 maxlength=50><br>

Bericht:<br /> <textarea rows="5" cols="47" name="bericht"></textarea><br>
Ik ga akkoord met de algeme voorwaarden:
<input type="checkbox" name="C1" value="ON"></p>
<p align="center">

<input type="submit" value=" Verstuur ">

</p>

</form>

</body>

</html>

Alvast bedankt:thumb:
 
Meer kan ik niet doen.
Code:
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns="urn:schemas-microsoft-comfficeffice" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<base target="I1">
<title></title>
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
    } if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body link="#FFFFFF" vlink="#FFFFFF" alink="#000000" bgcolor="#FFFACD" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">

<form method="POST" action="distribution/phorm.php" style="height: 778; border: 0px solid #950054; " enctype="multipart/form-data" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1"> 

<input type="hidden" name="PHORM_CONFIG" value="quickconfig.php"> 

<p align="center">&nbsp;</p>
<p align="center">Naam: <br /> 
&nbsp;<input name="name" type="text" id="name" onBlur="MM_validateForm('name','','R');return document.MM_returnValue" size=50 maxlength=50>
<br>
Adres:<br>
<input name="Adres" type="text" id="Adres" onBlur="MM_validateForm('Adres','','R');return document.MM_returnValue" size="51">
<br>
Postcode:<br>
<input name="Postcode" type="text" id="Postcode" onBlur="MM_validateForm('Postcode','','R');return document.MM_returnValue" size="56">
<br>
Woonplaats:<br>
<input name="Woonplaats" type="text" id="Woonplaats" onBlur="MM_validateForm('Woonplaats','','R');return document.MM_returnValue" size="57">
<br>
Telefoon nummer<br /><input name="Telefoonnummer" type="text" id="Telefoonnummer" onBlur="MM_validateForm('Telefoonnummer','','RisNum');return document.MM_returnValue" size="57"><br /> 

E-mailadres:<br /> 
&nbsp;<input name="email" type="text" id="email" onBlur="MM_validateForm('email','','RisEmail');return document.MM_returnValue" size=56 maxlength=50><br>

Bericht:<br /> <textarea name="bericht" cols="47" rows="5" id="bericht" onBlur="MM_validateForm('bericht','','R');return document.MM_returnValue"></textarea><br>



Ik ga akkoord met de algemene voorwaarden:<input name="C1" type="checkbox" onClick="MM_validateForm('email','','RisEmail');return document.MM_returnValue" value="go"></p>
<p align="center"> 

<input type="submit" onClick="MM_validateForm('email','','R');return document.MM_returnValue" value=" Verstuur "> 

</p>

</form>

</body>

</html>
Mvg
defietser
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan