Jump to content

setting up error messages


squigs

Recommended Posts

here is the original working code if someone wants to help me out down the road feel free.

<?php 
//This code runs if the form has been submitted
if (isset($_POST['submit'])) { 

//This makes sure they did not leave any fields blank
if (!$_POST['username'] | !$_POST['pass'] | !$_POST['pass2'] ) {
die('You did not complete all of the required fields');
}

// checks if the username is in use
if (!get_magic_quotes_gpc()) {
$_POST['username'] = addslashes($_POST['username']);
}
$usercheck = $_POST['username'];
$check = mysql_query("SELECT username FROM users WHERE username = '$usercheck'") 
or die(mysql_error());
$check2 = mysql_num_rows($check);

//if the name exists it gives an error
if ($check2 != 0) {
die('Sorry, the username '.$_POST['username'].' is already in use.');
}
// this makes sure both passwords entered match
if ($_POST['pass'] != $_POST['pass2']) {
die('Your passwords did not match. ');
}

// here we encrypt the password and add slashes if needed
$_POST['pass'] = md5($_POST['pass']);
if (!get_magic_quotes_gpc()) {
$_POST['pass'] = addslashes($_POST['pass']);
$_POST['username'] = addslashes($_POST['username']);
}

// now we insert it into the database
$insert = "INSERT INTO users (username, password)
VALUES ('".$_POST['username']."', '".$_POST['pass']."')";
$add_member = mysql_query($insert);
?>

<h1>Registered</h1>
<p>Thank you, you have registered - you may now login</a>.</p>
<?php }  else {	 ?> <form action="" method="post"> <table border="0"> <tr><td>Username:</td><td> <input type="text" name="username" maxlength="60"> </td></tr> <tr><td>Password:</td><td> <input type="password" name="pass" maxlength="10"> </td></tr> <tr><td>Confirm Password:</td><td> <input type="password" name="pass2" maxlength="10"> </td></tr> <tr><th colspan=2><input type="submit" name="submit" value="Register"></th></tr> </table> </form> <?php } ?> 
</body>
</html>

There's no reason to give up on it. The code you posted in reply #23 of this thread has no parse errors, and unless something else is going wrong, it should work. I may have made an incorrect assumption, though; where are you including the database connection functions?

 

Also, if you don't have error reporting enabled in your php.ini file, add this at the very top of the script.

error_reporting(-1);
ini_set('display_errors', 1);

 

Yes I do include Mysql connection as one of the first lines. The code in the included file looks like this

<?php mysql_connect("blah", "user", "password") or die(mysql_error()); 
mysql_select_db("blah_login") or die(mysql_error()); 
?>

and I believe that error reporting is turned on but I will double check it and turn it on if not...

 

I will continue to work on this script as a test file and if I (we) perfect the method I will switch over to it and save writing 3+ pages for every error on a page with a form.

 

As mentioned above I am currently using header('location:') for all my errors

Archived

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

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.