Я хочу вставить значения в usertable в базе данных, и если почта уже существует, я не хочу, чтобы данные вводились в базу данных, а также возвращали ошибку на стороне клиента. но мой код вставляет значения в таблицу, даже если почта уже существует.mysql_num_rows() предоставленный аргумент не является допустимым ресурсом результата mysql в php
Мой код
<?php
$con=mysqli_connect("localhost","username","password","databasename");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM usertable WHERE useremail='[email protected]'");
$number_of_rows = mysql_num_rows($result);
if ($number_of_rows > 0)
{
die('This email already exists in the database');
}
else
{
$sql="INSERT INTO usertable(username, useremail, usertype) VALUES ('newname', '[email protected]', 'usertypeval')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
}
mysqli_close($con);
?>
Ошибка:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/applicat/public_html/stampede/new.php on line 14
Запись добавляется в базу данных каждый раз. Что я делаю неправильно здесь. Пожалуйста помоги.
Вместо mysql_num_rows, используйте mysqli_num_rows –