You can validate via JS if required, for example: (JS CODE): if(element.value.length == 0){ // handle 0 length value } I do agree with Ken that you SHOULD NOT perform JS validation. It is preferable to use php or the new HTML5 features. JS can be turned-off by the user which will make JS validation impossible. On Fri, May 24, 2013 at 8:07 PM, Tim Dunphy <bluethundr@xxxxxxxxx> wrote: > Hello list, > > I have a php script that creates a variable number of forms based on a > $_POST variable from a preceding page. It then takes the data input into > the form and neatly packages the result into an email sent to an email > address (eventually to be a ticketing system). > > > Almost everything on the page works great. The only thing I can't seem to > get working is how to verify that the fields in the form are not left empty > using javascript. The syntax I'm using seems like it should work, however > when I leave one or more of the fields empty, the email gets sent anyway > with the missing data. > > Here's the app I was hoping someone might be able to suggest a successful > approach: > > <html> > <head> > <title>LDAP Form</title> > <body> > <?php > > if (isset($_POST['submit'])) { > $requestor_email = $_POST['requestor_email']; > $num_forms = $_POST['num_forms']; > } > > echo "<center>You will be creating $num_forms accounts > today.</center><br />"; > for($counter = 1;$counter<=$num_forms;$counter++) { > echo '<center><form name="ldap_accounts" method="post" > action="sendemail.php" onsubmit="return validateForm()">'; > echo '<br /><br />'; > echo "Enter user: $counter<br />"; > echo "<label for=\"first_name_.$counter.\">First Name:</label><br > />"; > echo "<input type=\"text\" id=\"first_name_.$counter.\" > name=\"first_name_.$counter.\" /><br /><br />"; > echo "<label for=\"last_name_.$counter.\">Last Name:</label><br > />"; > echo "<input type=\"text\" id=\"last_name_.$counter.\" > name=\"last_name_.$counter.\" /><br /><br />"; > echo "<label for=\"department_.$counter.\">Department:</label><br > />"; > echo "<input type=\"text\" id=\"department_.$counter.\" > name=\"department_.$counter.\" /><br /><br />"; > echo "<label for=\"title_.$counter.\">Title:</label><br />"; > echo "<input type=\"text\" id=\"title_.$counter.\" > name=\"title_.$counter.\" /><br /><br />"; > echo "<label for=\"email_.$counter.\">Email:</label><br />"; > echo "<input type=\"text\" id=\"email_.$counter.\" > name=\"email_.$counter.\" /><br /><br />"; > echo "<label for=\"phone_$counter.\">Phone:</label><br />"; > echo "<input type=\"text\" id=\"phone_.$counter.\" > name=\"phone_.$counter.\" /><br /><br />"; > ?> > <script> > function validateForm() > { > var a=document.forms["ldap_accounts"]["first_name_"].value; > if (a==null || a=="") > { > alert("User $counter first name must be filled out."); > return false; > } > var b=document.forms["ldap_accounts"]["last_name_"].value; > if (b==null || b=="") > { > alert("User $counter last name must be filled out."); > return false; > } > var c=document.forms["ldap_accounts"]["department_"].value; > if (c==null || c=="") > { > alert("User $counter department must be filled out."); > return false; > } > var d=document.forms["ldap_accounts"]["title_"].value; > if (d==null || d=="") > { > alert("User $counter title must be filled out."); > return false; > } > var d=document.forms["ldap_accounts"]["email_"].value; > if (d==null || d=="") > { > alert("User $counter address must be filled out."); > return false; > } > var d=document.forms["ldap_accounts"]["phone_"].value; > if (d==null || d=="") > { > alert("User $counter phone name must be filled out."); > return false; > } > } > </script> > <?php > } > > echo "<input type=\"hidden\" id=\"num_forms\" name=\"num_forms\" > value=\"$num_forms\" /><br /><br />"; > echo "<input type=\"hidden\" id=\"requestor_email\" > name=\"requestor_email\" value=\"$requestor_email\" />"; > echo "<input type=\"submit\" name=\"submit\" value=\"Create Ticket\" />"; > echo "</form></center>"; > > ?> > </body> > </html> > > Thanks, > Tim > > -- > GPG me!! > > gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B >