bool(false) Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, bool given in /home/d/dedfam80/dedfam80.beget.tech/public_html/register.php on line 15
Warning: Use of undefined constant mysqli_result - assumed 'mysqli_result' (this will throw an Error in a future version of PHP) in /home/d/dedfam80/dedfam80.beget.tech/public_html/register.php on line 14 Warning: mysqli_num_rows() expects exactly 1 parameter, 2 given in /home/d/dedfam80/dedfam80.beget.tech/public_html/register.php on line 14 NULL
mysqli_num_rows() хочет видеть первым параметром mysqli_result, а получает bool!
Что толку от того, что вы $numrows на false проверяете (да еще и через ==, а не через ===)??
<?php
if(isset($_POST["register"])){
if(!empty($_POST['full_name']) && !empty($_POST['email']) && !empty($_POST['username']) && !empty($_POST['password'])) {
$full_name= htmlspecialchars($_POST['full_name']);
$email=htmlspecialchars($_POST['email']);
$username=htmlspecialchars($_POST['username']);
$password=htmlspecialchars($_POST['password']);
$hpassword = md5($password);
$query=mysqli_query($con, "SELECT * FROM user WHERE username='".$username."'");
$numrows=mysqli_num_rows($query);
if($numrows==false)
{
$sql="INSERT INTO user
(full_name, email, username,password)
VALUES('$full_name','$email', '$username', '$hpassword')";
$result=mysqli_query($con, $sql);
if($result){
$message = "Аккаунт успешно зарегистрирован!";
} else {
$message = "Неудалось сохранить данные!";
}
} else {
$message = "Это имя пользователя уже существует! Пожалуйста, попробуйте другой!";
}
} else {
$message = "Все поля обязательны к заполнению!";
}
}
?>