致命错误:在第22行的/home/*****/public_html/lnews.php中调用boolean上的成员函数execute()

时间:2017-06-09 09:10:43

标签: php mysqli

代码:

$results = $mysqli->prepare("SELECT news_title FROM news ORDER BY posted_time DESC");
$results->execute();
$results->bind_result($news_title);

当我执行代码时,它将返回致命错误:在第22行的/home/*****/public_html/lnews.php中调用boolean上的成员函数execute()。那么,我该如何修复这个问题?请帮忙

谢谢

1 个答案:

答案 0 :(得分:0)

由于这一点,数据库存在一些错误,因此prepare方法返回FALSE,成功时此方法返回预准备语句。

您可以查看日志以确定数据库错误。此外,您应该按以下方式更改代码,并在else中抛出一些异常。

$results = $mysqli->prepare("SELECT news_title FROM news ORDER BY posted_time DESC");
if($results !== false) {
    $results->execute();
    $results->bind_result($news_title);
}

在这种情况下,如果返回false(如果存在数据库错误),则不会调用execute方法。