I keep getting this error:
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:*****\register.php on line 28
I am using XAMPP environment.
<?php
require_once '/includes/config.php'; // All of the settings for the site
require_once '/includes/dbconfig.php'; // Database Configuration
?>
<?php
if($_POST) {
$password = $_POST['password'];
$confirm = $_POST['confirm'];
if($password != $confirm) {
$error = "Error: Passwords don't match";
}
else if((strlen($password) >= 15) || (strlen($username) <= 4) && (strlen($username) != 0))
{
$error = "Error: Password does is longer than 15 characters or shorter than 4!";
}
else if((strlen($username) >= 15) || (strlen($username) <= 4) && (strlen($username) != 0))
{
$error = "Error: Username is longer than 15 characters or shorther than 4!";
}
else {
$conn = mysql_connect($dbhost,$dbuser,$dbpass)
or die ('Error connecting to mysql');
mysql_select_db($dbname);
$query = sprintf("SELECT COUNT(id) FROM users WHERE UPPER(username) = UPPER('%s')",
mysql_real_escape_string($_POST['username']));
$result = mysql_query($query);
list($count) = mysql_fetch_row($result);
if($count >= 1) {
$error = "Error: that username is taken.";
}
else {
$query = sprintf("INSERT INTO users(username,password) VALUES ('%s','%s');",
mysql_real_escape_string($_POST['username']),
mysql_real_escape_string(md5($password)));
mysql_query($query);
$error = "We have sent an email notification. Please check your email and verify your account!";
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head><title><?php echo "$pageTitle"; ?> - Registration</title></head>
<body>
<form method='post' action='register.php'>Username: <input type='text' name='username' /><br />
Password: <input type='password' name='password' /><br />
Confirm Password: <input type='password' name='confirm' /><br />
<input type='submit' value='Register' />
</form>
<?php echo "$error"; ?>
</body>
</html>