I am working on a form that is going to have a TON of necessary validation. At first i was just going to print out each individual error, but that became a problem REAL quick...plus i am thinking ahead of possible other forms of validation that might need to take place. My problem is that when testing the validation i put in values into the form that should have caused an error...however the only error message is the first error message. I did a var_dump($formErrorMsg) and the only there is only one value. I know that there is just something small that i am overlooking. I have been working on this for a little while and im getting burnt out on it. On submission the an/all error messages should display. Any help or suggestions would be greatly appreciated.
//being code
<?
define('INSURANCE_BASE', dirname(FILE));
require_once INSURANCE_BASE.'/lib/base.php';
?>
<html>
<head>
<style type="text/css">
<!--
td.required
{
background-color:#c9c9c9;
font-family:arial, helvetica, 'sans-serif';
font-size:10pt;
color:red;
}
td.label
{
background-color:#c9c9c9;
font-family:arial, helvetica, 'sans-serif';
font-size:10pt;
color:black;
}
-->
</style>
<title>Account Information</title>
</head>
<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
<?
if (!empty($POST)) {
if (empty($POST['firstName'])) {
$formErrorMsg[] = "Please make sure that you entered your first name\n";
}
elseif (preg_match('/[0-9]/',$POST['firstName'])) {
$formErrorMsg[] = "Please enter valid name";
}
elseif(empty($POST['lastName'])) {
$formErrorMsg[] = "Please make sure that you entered a last name\n";
}
elseif(isset($POST['lastName']) && preg_match('/[0-9]/', $POST['lastName'])) {
$formErrorMsg[] = "Please enter a valid last name\n";
}
elseif(empty($POST['emailAddress'])) {
$formErrorMsg[] = "Please enter an email address\n";
}
elseif(!ereg("[@ ]+@[@ ]+.[@ .]+$",$POST['emailAddress'])) {
$formErrorMsg[] = "Please enter a valid email address\n";
}
elseif(!empty($POST['policyNumber']) && !is_numeric($POST['policyNumber'])) {
$formErrorMsg[] = "Please enter a valid policy number\n";
}
elseif(!empty($POST['hphone']) && !preg_match('/\d{3}-\d{3}-\d{4}/', $POST['hphone'])){
$formErrorMsg[] = "Please enter a valid telephone number\n";
$formErrorMsg[].= "Example: 901-555-1212\n";
}
if(!empty($formErrorMsg) && is_array($forErrorMsg)) {
foreach($formErrorMsg as $errorMsg) {
print $errorMsg."<br>\n";
}
}
var_dump($formErrorMsg);
}
?>
<form name="personalinfo" action="<?=$PHP_SELF?>" method="post">
<table border="0">
<tr>
<td align="left" colspan="2">
<h1>Personal Information</h1>
</td>
</tr>
<tr>
<td class="required" width="20%">
First Name
</td>
<td width="80%">
<input type="text" name="firstName">
</td>
</tr>
<tr>
<td class="required" width="20%">
Last Name
</td>
<td width="80%">
<input type="text" name="lastName">
</td>
</tr>
<tr>
<td class="label" width="20%">
Policy Number
</td>
<td width="80%">
<input type="text" name="policyNumber">
</td>
</tr>
<tr>
<td class="label" width="20%">
Street Address
</td>
<td width="80%">
<input type="text" name="addr1">
</td>
</tr>
<tr>
<td class="label" width="20%">
Street Address 2
</td>
<td width="80%">
<input type="text" name="addr2">
</td>
</tr>
<tr>
<td class="label" width="20%">
City
</td>
<td width="80%">
<input type="text" name="city">
</td>
</tr>
<tr>
<td class="label" width="20%">
State
</td>
<td width="80%">
<select name="state">
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AR">Arkansas</option>
<option value="AZ">Arizona</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DC">District of Columbia</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="IA">Iowa</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="MA">Massachusetts</option>
<option value="MD">Maryland</option>
<option value="ME">Maine</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MO">Missouri</option>
<option value="MS">Mississippi</option>
<option value="MT">Montana</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="NE">Nebraska</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NV">Nevada</option>
<option value="NY">New York</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VA">Virginia</option>
<option value="VT">Vermont</option>
<option value="WA">Washington</option>
<option value="WI">Wisconsin</option>
<option value="WV">West Virginia</option>
<option value="WY">Wyoming</option>
</select>
</td>
</tr>
<tr>
<td class="label" width="20%">
Home Phone
</td>
<td width="80%">
<input type="text" name="hphone">
</td>
</tr>
<tr>
<td class="label" width="20%">
Other Phone
</td>
<td width="80%">
<input type="text" name="altphone">
</td>
</tr>
<tr>
<td class="label" width="20%">
Fax
</td>
<td width="80%">
<input type="text" name="fax">
</td>
</tr>
<tr>
<td class="required" width="20%">
Email Address
</td>
<td width="80%">
<input type="text" name="emailAddress">
</td>
</tr>
<tr>
<td class="required">
Fields in red are required
</td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="Submit Info"> <input type="reset" name="reset">
</td>
</tr>
</table>
</form>
</body>
</html>
//end code