Page 1 of 1

MySQL Not Returning Error, and not posting to database

Posted: Mon Jun 02, 2008 7:17 am
by tecktalkcm0391
I cannot get this to insert into a database, or to return an error with mysql_error(); ... Note: I now that this isn't as secure as it could be, but its just something basic i'm working on.

Code: Select all

<?php
// Connects to your Database
$link = mysql_connect("sql.site.com", "username", "password") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());
 
//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']);
$_POST['fullname'] = addslashes($_POST['fullname']);
$_POST['email'] = addslashes($_POST['email']);
$_POST['phone'] = addslashes($_POST['phone']);
$_POST['address'] = addslashes($_POST['address']);
}
 
// now we insert it into the database
$insert = "INSERT INTO users (username, password, FullName, Email, PhoneNumber, Address)
VALUES ('".$_POST['username']."', '".$_POST['pass']."', '".$_POST['fullname']."', '".$_POST['email']."', '".$_POST['phone']."', '".$_POST['address']."')";
$add_member = mysql_query($insert);
echo mysql_error();
    if(!$add_member){
        echo mysql_error();
    } else {
 
    ?>
    
    
<h1 align="center">Registered</h1>
    <p align="center">Thank you, you have registered - now you need to wait for an admintrator to activate your account.<br />
      Once you're account is activated, and you recieve an email, you will be able to login.
</p>
    
    
    <?php
        
    }
}
else
{
?>
 
 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border="0" align="center">
<tr>
  <td>Full Name :</td>
  <td>
<input name="fullname" type="text" id="fullname" maxlength="60">
</td></tr>
<tr>
  <td>E-mail Address :</td>
  <td>
<input name="email" type="text" id="email" maxlength="60">
</td></tr>
<tr>
  <td>Phone Number :</td>
  <td>
<input name="phone" type="text" id="phone" maxlength="60">
</td></tr>
<tr>
  <td valign="top">Address:</td>
  <td><label for="textarea"></label>
<textarea name="address" cols="21" rows="3" id="address"></textarea></td>
</tr>
<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
}
?>

Re: MySQL Not Returning Error, and not posting to database

Posted: Mon Jun 02, 2008 9:57 am
by Jaxolotl
I replicate de database structure and the script in my testing local machine
Apache 1.3.33
php 4.3.10
mySQl 4.1.9

run the script successfully, and the record was stored correctly on the database.
I didn't make further checks but until here the script did what it was meant to do.
Search the problem maybe on the database permissions for your current user, turn error_reporting to error_reporting(E_ALL) and check if the script is running without errors

Re: MySQL Not Returning Error, and not posting to database

Posted: Tue Jun 03, 2008 8:54 am
by tecktalkcm0391
Thanks, but I am still having trouble... i guess i'll work on it later.

thanks!