mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in
时间: 2024-03-08 09:46:10 浏览: 127
PHP mysqli_free_result()与mysqli_fetch_array()函数详解
5星 · 资源好评率100%
这个错误通常是由于查询语句有误或连接错误引起的。请检查以下几个方面:
1. 确认你已经成功连接到了数据库。在连接数据库时,可以使用 `mysqli_connect()` 函数并检查连接是否成功。例如:
```php
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
```
如果连接失败,`mysqli_connect_error()` 函数将返回错误信息。
2. 确认你的查询语句没有语法错误。在查询数据库时,可以使用 `mysqli_query()` 函数来执行查询语句。例如:
```php
$sql = "SELECT * FROM table_name";
$result = mysqli_query($conn, $sql);
```
如果查询语句有语法错误,`mysqli_query()` 函数将返回 `false`。
3. 确认查询结果不为空。如果查询结果为空,`mysqli_fetch_assoc()` 函数将会返回 `false`,导致上述错误。你可以使用 `mysqli_num_rows()` 函数来检查查询结果是否为空。例如:
```php
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
// 输出查询结果
}
} else {
echo "0 results";
}
```
如果查询结果为空,将会输出 "0 results"。
如果你已经检查了以上几个方面,并且仍然遇到这个错误,请检查你的代码并尝试解决问题。
阅读全文