Jump to content

PHP Registration Script Problem


Sniffy

Recommended Posts

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

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...