在我的 MySQL 数据库中查询表时出现错误。当传递的变量中没有值时,这是标准的 mysqli_num_rows :
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in folder/file.php on line 29
问题是我找不到语法错误。我已经看过很多次了。这是我的代码:
$sql_messages = "SELECT * FROM messages WHERE to='$userid'";
$result_messages = $mysqli->query($sql_messages);
$num_rows_messages = mysqli_num_rows($result_messages);
我尝试了一个 fetch 数组,但这给了我类似的错误。我想没有任何东西传递到 $result_messages 中。我回显了 $userid,它有一个值,我检查了我的数据库,有一个表 'messages' 和一个字段'to'。我已连接到正确的数据库,因为在此查询之前我有此代码:
$sql="SELECT * FROM users WHERE firstname='$firstname' && lastname='$lastname'";
$result = $mysqli->query($sql);
$row = mysqli_fetch_array($result);
这很好用。这是页面上的第三个查询,是否有某种限制?有没有人看到我忽略的语法错误?谢谢,如果是小错误,请见谅!