Ошибка PHP: mysqli_num_rows () ожидает, что параметр 1 будет mysqli_result, boolean given

Возможный дубликат:
mysql_fetch_array () ожидает, что параметр 1 будет ресурсом, boolean задан в select

Ниже приведена следующая ошибка. Строка 53 есть, if(mysqli_num_rows($r) == 1) { . Как я могу исправить эту проблему.

 PHP error: on line 53: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given 

Вот код PHP MySQL.

 $d = "UPDATE users SET del = 1, del_date = NOW() WHERE userid = '" . $_SESSION['userid'] . "'"; $r = mysqli_query ($mysqli, $d) or trigger_error("Query: $d\n<br />MySQL Error: " . mysqli_error($mysqli)); if(mysqli_num_rows($r) == 1) { 

mysqli_query возвращает логическое значение для запросов UPDATE. См. http://php.net/manual/en/mysqli.query.php . Вы, вероятно, хотите что-то вроде этого:

 if (mysqli_affected_rows() == 1) { // ... } 

Поскольку mysqli_query () возвращает TRUE (1) в UPDATE. mysqli_num_rows () ожидает, что некоторые строки будут удалены из запросов SELECT, SHOW, DESCRIBE или EXPLAIN.

Так:

 if ($r) { 

или используйте mysqli_affected_rows ()