Hi, I'm validating a simple form for input via post ($PHP_SELF). Near the
end I check for username and password. I'm using simple if, elseif, else
statements.
I require them to enter password twice and check that they match. Problem is
script doesn't valide past username input and I dont know why!! If you don't
enter a password it doesn't do the validation anymore, it just dies for some
reason. I would greatly appreciate anyones help, I've stared at this thing
for hours and hours.
Here is code...
while(list($key, $value) = each($HTTP_GET_VARS)) {
echo "$key = $value<br>";
}
if ($form && strpos($HTTP_REFERER, $SCRIPT_NAME) > 0) {
$cfirstname = clean($cfirstname);
$clastname = clean($clastname);
$lname = clean($lname);
$laddress1 = clean($laddress1);
$laddress2 = clean($laddress2);
$lcity = clean($lcity);
$lstate = clean($lstate);
$lzip = clean($lzip);
$lcountry = clean($lcountry);
$lareacode = clean($lareacode);
$lprefix = clean($lprefix);
$lsuffix = clean($lsuffix);
$lintcode = clean($lintcode);
$ldayrate1 = clean($ldayrate1);
$ldayrate2 = clean($ldayrate2);
$ldescription = clean($ldescription);
$remail = lower(clean($remail));
$username = lower(clean($username));
$password = lower(clean($password));
$password2 = lower(clean($password2));
if ($username) {
$q = "SELECT id FROM account WHERE username='". apos($username) ."'";
$res = mysql_query($q);
$num = mysql_num_rows($res);
if ($num > 0) {
$focus = "username";
$msg = "This username is taken, please choose a different one.";
}} elseif ($password != $password2) {
$focus = "password2";
$msg = "Passwords do not match.";
} elseif (!$cfirstname) {
$focus = "cfirstname";
$msg = "Please enter your first name.";
} elseif (!$clastname) {
$focus = "clastname";
$msg = "Please enter your last name.";
} elseif (!$lname) {
$focus = "lname";
$msg = "Please enter the name of your lodging.";
} elseif (!$laddress1) {
$focus = "laddress1";
$msg = "Please enter your lodging's physical address.";
} elseif (!$lcity) {
$focus = "lcity";
$msg = "Please enter your city.";
} elseif (!$lstate) {
$focus = "lstate";
$msg = "Please select/enter your state or province.";
} elseif (!$lzip) {
$focus = "lzip";
$msg = "Please enter your postal code.";
} elseif (!$lcountry) {
$focus = "lcountry";
$msg = "Please enter your country.";
} elseif (!$rphone) {
$focus = "rphone";
$msg = "Please enter your reservations phone number";
} elseif (!$ldayrate1) {
$focus = "ldayrate1";
$msg = "Please enter your minimum daily rate.";
} elseif (!$ldayrate2) {
$focus = "ldayrate2";
$msg = "Please enter your maximum daily rate.";
} elseif (!$ldescription) {
$focus = "ldescription";
$msg = "Please provide a description of your lodging.";
} elseif (strlen($ldescription) > 200) {
$focus = "ldescription";
$msg = "Your description is limited to 200 characters.";
} elseif (!is_valid_email($remail)) {
$focus = "remail";
$msg = "Please enter a valid email address.";
} elseif (!$username) {
$focus = "username";
$msg = "Please enter a username.";
} elseif (!$password) {
$focus = "password";
$msg = "Please enter a password.";
} elseif (!$password2) {
$focus = "password2";
$msg = "Please re-enter your password.";
} else { etc, etc..