可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in 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) {
答案 0 :(得分:5)
mysqli_query
为UPDATE查询返回一个布尔值。见http://php.net/manual/en/mysqli.query.php。你可能想要这样的东西:
if (mysqli_affected_rows() == 1) {
// ...
}
答案 1 :(得分:3)
因为mysqli_query()在UPDATE上返回TRUE(1)。 mysqli_num_rows()需要成功的SELECT,SHOW,DESCRIBE或EXPLAIN查询中的一些行。
所以:
if ($r) {
或使用mysqli_affected_rows()