Sniffy Posted May 21, 2007 Share Posted May 21, 2007 So i have been working on a registration script for my site. It seems to be going quite smoothly until i came into an error in my script that i might be overlooking and need advice on.Ok, so here's what i put in on my form for my username:Username: tss909Here is my script for regProcess.php <?phpsession_start();//if already logged in, redirect to home pageif(isset($_SESSION['userName'])){ echo "<script type='text/javascript'>window.location = 'index.php';</script>";}//connect to host$con = mysql_connect("fdb1.awardspace.com", ".;..;;.;;..", ".;l;.;.;;..") or die(mysql_error());//select databasemysql_select_db("sniffygerbil_db", $con);$userName = htmlentities($_POST['userName']);if(preg_match("/^[a-zA-Z0-9]{3,16}$/", $userName)){ $checkUserName = mysql_query("SELECT userName FROM basicUserInfo WHERE userName='".$userName."'"); if(!$checkUserName) { //if username wasn't found insert it into the database $insertUserName = true; } else { $insertUserName = false; }}else{ $insertUserName = false;}//Check to make sure password is valid, insert it into database under new user name or stop processif($_POST['password'] == $_POST['confirmPassword']){ $password = htmlentities($_POST['password']); if(preg_match("/^[a-zA-Z0-9]{3,8}$/", $password)) { $insertPassword = true; } else { $insertPassword = false; }}else{ $insertPassword = false;}if($_POST['email'] == $_POST['confirmEmail']){ $email = htmlentities($_POST['email']); if(preg_match("/^[a-zA-Z0-9._-]{6,50}$/", $email)) { $insertEmail = true; } else { $insertEmail = false; }}else{ $insertEmail = false;}$furColor = $_POST['furColor'];$eyeColor = $_POST['eyeColor'];//if all required fields are accurate, insert newly created user into the databaseif($insertUserName && $insertPassword && $insertEmail){ $insertAll = mysql_query("INSERT INTO basicUserInfo VALUES ('".$userName."', '".$password."', '".$email."', '".$furColor."', '".$eyeColor."', 1, 0, 100, 0, 'no')"); if(!$insertAll) { $insertUserName = false; $insertPassword = false; $insertEmail = false; } else { echo "Success! You are now registered as:".$userName."!"; $regMailMessage = "Congratulations! You are now a member of Gerbius. Your user name is:".$userName.". Your password is:".$password.". [url="http://sniffygerbil.com";"]http://sniffygerbil.com";[/url] mail($email, "Gerbius Registration", $regMailMessage); }}//if not, alert the user on their errorselseif(!$insertUserName){ echo "User name was invalid. This could be that your desired user name was already taken."; echo "This could also be the fact that your user name was not between 3 to 16 characters in length."; echo "This could also be the fact that your user name was not made up of only alpha-numeric characters.";}elseif(!$insertPassword){ echo "Password was invalid. This could be that your password was not between 3 to 8 characters in length."; echo "This could also be the fact that your password was not made up of only alpha-numberic characters.";}elseif(!$insertEmail){ echo "Email was invalid. Please make sure your email is between 6 to 50 characters in length."; echo "Make sure your email address is also made up of alpha-numeric characters and \"-\",\".\",\"_\", only!";}?> Here is register.php with the form <?php//if already logged in, redirect to home pageif(isset($_SESSION['userName'])){ echo "<script type='text/javascript'>window.location = 'index.php';</script>";}?><html> <head> <title>Gerbius - Registration</title> </head> <body> <form action="regProcess.php" method="post"> Username: <input type="text" name="userName" /> <br /> Password: <input type="password" name="password" /> <br /> Confirm Password: <input type="text" name="confirmPassword" /> <br /> Email: <input type="text" name="email" /> <br /> Confirm Email: <input type="text" name="confirmEmail" /> <br /> Fur Color: <select name="furColor"> <option value="gold">Gold</option> <option value="white">White</option> <option value="red">Red</option> <option value="brown">Brown</option> <option value="black">Black</option> <option value="blue">Blue</option> <option value="green">Green</option> <option value="purple">Purple</option> </select> <br /> Eye Color: <select name="eyeColor"> <option value="white">White</option> <option value="black">Black</option> <option value="blue">Blue</option> <option value="green">Green</option> <option value="red">Red</option> <option value="yellow">Yellow</option> <option value="purple">Purple</option> <option value="brown">Brown</option> </select> <br /> <input type="submit" value="Submit" /> <input type="reset" value="Reset" /> </form> </body></html> When i click on submit, this is what comes up on regProcess.php:User name was invalid. This could be that your desired user name was already taken.This could also be the fact that your user name was between 3 to 16 characters in length.This could also be the fact that your user name was not made up of only alpha-numeric characters. I did enter a valid password though, so what is the problem?It could be a little bug in my script, my as i said, i am probably overlooking it. Link to comment Share on other sites More sharing options...
astralaaron Posted May 23, 2007 Share Posted May 23, 2007 http://w3schools.invisionzone.com/index.php?showtopic=13173 Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.