【发布时间】:2013-11-08 11:15:56
【问题描述】:
我收到此错误:
警告:mysqli_free_result() 期望参数 1 是 mysqli_result,布尔值在
在我的代码中,我有:
// Perform it
$result = mysqli_query($connection, $query);
if ($result) {
// Success
echo "<h1>Uploaded results to database</h1>";
} else {
echo "FAILURE: Couldn't perform query on database: " . mysqli_error($connection);
}
// Release
mysqli_free_result($result);
我读过的大多数其他解决方案都说这是因为查询可能失败了,但事实并非如此,因为我测试了查询返回的数据以查看它是否存在,所以<h1>标签被执行。那我怎么放不出来?我认为我应该总是在处理完返回的数据后发布它?
【问题讨论】:
-
来自手册:“失败时返回 FALSE。对于成功的
SELECT、SHOW、DESCRIBE或EXPLAIN查询mysqli_query()将返回一个 @ 987654329@ 对象。对于 其他成功的查询,mysqli_query()将返回 TRUE" - 我猜你正在使用UPDATE查询 - 因此你得到一个 TRUE(布尔值)返回。您只能在返回mysqli_result对象的查询上使用mysqli_free_result -
也发布您的查询..