I am creating a registration form with validation and I am stuck on this error. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/www/familease.org.uk/register.php on line 25
The code I have, worked fine for me on my local host but when I transferred it to my websites server the error appeared. Help is hugely appreciated.
*Also because I know it’s coming I have tried using mysqli instead of mysql but it created more errors so I stuck with what I was most comfortable with.
Code:
<?php
require 'core.php';
$con=mysql_connect("localhost","*****","****","*****");
if (!loggedin()) {
if (isset($_POST['Firstname'])&&isset($_POST['Surname'])&&isset($_POST['Email'])&&isset($_POST['Username'])&&isset($_POST['Password'])&&isset($_POST['password_again'])) {
$Firstname= $_POST['Firstname'];
$Surname= $_POST['Surname'];
$Email= $_POST['Email'];
$Username= $_POST['Username'];
$Password= $_POST['Password'];
$password_hash = md5($Password);
$password_again= $_POST['password_again'];
if (!empty($Firstname)&&!empty($Surname)&&!empty($Email)&&!empty($Username)&&!empty($Password)&&!empty($password_again)){
if ($Password!=$password_again) {
echo 'Passwords do not match';
} else {
$query = "SELECT `Username` FROM `Parent` WHERE `Username`='$Username'";
$query_run = mysql_query($query);
echo $query_run;
if (mysql_num_rows($query_run)==1) {
echo 'The username '.$Username.' already exists';
} else {
$query = "INSERT INTO `Parents` VALUES('".mysql_real_escape_string($Firstname)."','".mysql_real_escape_string($Surname)."','".mysql_real_escape_string($Email)."','".mysql_real_escape_string($Username)."','".mysql_real_escape_string($password_hash)."','')";
if ($query_run = (mysql_query($query))) {
header('Location: register_success.php');
} else {
echo 'Sorry, we couldn\'t register you at this time. Try again later.';
}
}
}
} else {
echo'All fields are required';
}
}
?>
<form action="register.php" method="POST">
Firstname: <br> <input type="text" name="Firstname" ><br><br>
Surname: <br> <input type="text" name="Surname" ><br><br>
Email Address: <br> <input type="text" name="Email" ><br><br>
Username: <br> <input type="text" name="Username" ><br><br>
Password: <br> <input type="password" name="Password"><br><br>
Password Again: <br> <input type="password" name="password_again"><br><br>
<input type="submit" value="Register"></form>
<?php
} else if (loggedin()) {
echo 'You\'re already registered and logged in.';
}
?>