Okay, this is a tricky one (i think so, anyway!), and rather long but pleeeeeeeease help me! I don't expect you to spend hours looking at the problem, but any insight is appreciated.
I am (trying) to create a members only website. However, I am having a spot of bother. It all works perfectly... The second time you fill in any form. first, the user goes to newuser_process.php (Sample A) (the same thing happens if the user goes to apply.php, I might add). Then, the user fills in the form, and submits it to newuser_process.php the program then checks for blank fields, which it finds none. it then goes on to check individual fields, and here it hangs. it executes the if block (even though the condition is not true), and re-shows the form, with the error message, but with nothing in the fields. If you fill in the form again, it works. help!!! So far, I have re-arranged the validation order, to see if that makes a difference, but it always fails on the first if loop. I have also tried to manually recreate the variables on sample 'B' (apply.php) (shown in green, if you have html formatting enabled. Other than that, I am totally clueless. You can reach me at any of the adresses at the end of the e mail, for any solutions, queries about my aims/ideals in this script, or anything else. P.s. The .inc files and .js files are totally unrelated to the newuser script. Thanks, Adam Bishop Sample 'A' <?PHP switch (@$do) { case "process": session_start(); session_register('Sauth'); session_register('Slogname'); session_register('Spermissionlevel'); session_register('Sapprove'); include("thing.inc"); foreach($HTTP_POST_VARS as $key2 => $value2) { $$key2 = $value2; } foreach($HTTP_POST_VARS as $key => $value) { if ($key != "address2") { if ($key != "mobno") { if ($value == "") { unset($do); $message_new = "You have missed a required field. Please check back and fill in the required data"; include("apply.php"); exit(); } } } $$key = strip_tags(trim($value)); }//end of foreach loop if (!ereg("^[0-9]{11,11}$",$telno)) { unset($do); $message_new = "Your telephone number does not appear to be valid. Please try again."; include("apply.php"); exit(); } if ($mobno != "") { if (!ereg("^[0-9]{11,11}$",$mobno)) { unset($do); $message_new = "Your mobile number does not appear to be valid. Please try again."; include("apply.php"); exit(); } } if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$email)) { unset($do); $message_new = "Your e mail address does not appear to be valid. Please try again."; include("apply.php"); exit(); } if ($password != $password2) { unset($do); $message_new = "Your passwords do not match. Please try again."; include("apply.php"); exit(); } $connection = mysql_connect($host,$user,$password) or die("Couldn't Connect to server"); $sql = "SELECT username FROM members WHERE username='$username'"; $result = mysql_query($sql) or die("Failed to check user name"); $num = mysql_numrows($result); if ($num != 0) { unset($do); $message_new = "Username already taken. Please choose another."; include("apply.php"); exit(); } else { /*Submits user to database.*/ } default: include("apply.php"); } ?> sample 'B' <?PHP include("thing.inc"); foreach(HTTP_POST_VARS as $key3 => $value3) { $$key3 = $value3; } ?> <HTML> <HEAD> <!--The next section calls up the external files--> <LINK REL=StyleSheet HREF="css/default.css" TYPE="text/css" MEDIA="screen"> <SCRIPT SRC="js/functions.js" LANGUAGE="JAVASCRIPT"> </SCRIPT> <TITLE> Welcome to the Didcot Explorers Website </TITLE> </HEAD> <BODY> <!--This table contains only the title image--> <TABLE BORDER="0" BGCOLOR="WHITE" CELLSPACING="15" CELLPADDING="0" WIDTH="100%"> <TR> <TD COLSPAN="2" BGCOLOR="WHITE"> <IMG SRC="images/title.jpg"></TD> </TR> </TABLE> <!--This table contains everything else--> <TABLE BORDER="0" BGCOLOR="WHITE" CELLSPACING="15" CELLPADDING="3" WIDTH="100%"> <TR> <!--This cell contains the word 'navigation'--> <TD WIDTH="18%" CLASS="navigation"> <CENTER> Navigation </CENTER> </TD> <TD ROWSPAN="2" WIDTH="82%" CLASS="2" VALIGN="TOP"> <!--This is the main frame. Put the main body of the file here--> <H2><B><I>Becoming A Member:</I></B></H2> <P> In order to become a member of the Didcot Explorer website, you must be an attending member. If you still want to become a member, you must fill in all of this form. <P> <?PHP if (isset($message_new)) { echo "<FONT COLOR='RED'><B>$message_new</B></FONT>"; } ?> <CENTER> <FORM ACTION="newuser_process.php?do=process" METHOD="POST"> <TABLE BORDER="0" WIDTH="85%"> <TR><TD COLSPAN="2"><B><I>Names:</B></I></TD></TR> <TR><TD ALIGN="RIGHT">First Name: </TD><TD><INPUT TYPE="TEXT" NAME="fname" VALUE="<?PHP echo @$fname ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Second Name: </TD><TD><INPUT TYPE="TEXT" NAME="lname" VALUE="<?PHP echo @$lname ?>"></TD></TR> <TR></TR> <TR><TD COLSPAN="2"><B><I>Address:</B></I></TD></TR> <TR><TD ALIGN="RIGHT">1st Line of Address: </TD><TD><INPUT TYPE="TEXT" NAME="address1" VALUE="<?PHP echo @$address1 ?>"></TD></TR> <TR><TD ALIGN="RIGHT">2nd Line of Address: <BR><FONT SIZE="2">(optional)</TD><TD><INPUT TYPE="TEXT" NAME="address2" VALUE="<?PHP echo @$address2 ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Town: </TD><TD><INPUT TYPE="TEXT" NAME="town" VALUE="<?PHP echo @$town ?>"></TD></TR> <TR><TD ALIGN="RIGHT">County: </TD><TD><INPUT TYPE="TEXT" NAME="county" VALUE="<?PHP echo @$county ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Postcode: </TD><TD><INPUT TYPE="TEXT" NAME="postcode" VALUE="<?PHP echo @$postcode ?>"></TD></TR> <TR></TR> <TR><TD COLSPAN="2"><B><I>Contact Numbers:</B></I></TD></TR> <TR><TD ALIGN="RIGHT">Telephone Number: <BR><FONT SIZE="2">(inc. Area code)</TD><TD><INPUT TYPE="TEXT" NAME="telno" VALUE="<?PHP echo @$telno ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Mobile Number: <BR><FONT SIZE="2">(optional)</TD><TD><INPUT TYPE="TEXT" NAME="mobno" VALUE="<?PHP echo @$mobno ?>"></TD></TR> <INPUT TYPE="HIDDEN" NAME="permission" VALUE="1"> <INPUT TYPE="HIDDEN" NAME="approve" VALUE="No"> <TR></TR> <TR><TD COLSPAN="2"><B><I>User Details:</B></I></TD></TR> <TR><TD ALIGN="RIGHT">E-mail address: </TD><TD><INPUT TYPE="TEXT" NAME="email" VALUE="<?PHP echo @$email ?>"></TD></TR> <TR><TD COLSPAN="2"><B><I>Please Select the Following:</B></I></TD></TR> <TR><TD ALIGN="RIGHT">Username: </TD><TD><INPUT TYPE="TEXT" NAME="username" VALUE="<?PHP echo @$username ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Password: </TD><TD><INPUT TYPE="PASSWORD" NAME="password" VALUE="<?PHP echo @$password ?>"></TD></TR> <TR><TD ALIGN="RIGHT">Confirm Password: </TD><TD><INPUT TYPE="PASSWORD" NAME="password2" VALUE="<?PHP echo @$password2 ?>"></TD></TR> <TR><TD COLSPAN="2"><CENTER><INPUT TYPE="Submit" VALUE="Apply For Membership"> <INPUT TYPE="Reset" VALUE="Reset Form"></CENTER></TD></TR> </FORM> </TABLE> </CENTER> </TD> <TR> <?PHP include("inc/navigation.inc"); ?> </TR> </TABLE> </BODY> </HTML> [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] _________________________________________________________________ Stay in touch with absent friends - get MSN Messenger http://www.msn.co.uk/messenger