我在第26行遇到问题:致命错误:在第26行的C:\ OpenServer \ domains \ bashlam.com \ models \ Product.php中的非对象上调用成员函数fetch()找不到问题,我做了var_dump on($ result)是说bool(假),所以不明白我做错了什么?
public static function getLatestProducts($count = self::SHOW_BY_DEFAULT, $page = 1)
{
$count = intval($count);
$db = Db::getConnection();
$productList = array();
$result = $db->query("SELECT id, name, price, image, is_new FROM product "
. "WHERE status = '1' "
. "ORDER BY id DESC "
. "LIMIT " . $count);
var_dump($result);
$i = 0;
while($row = $result->fetch()){
$productList[$i]['id'] = $row['id'];
$productList[$i]['name'] = $row['name'];
$productList[$i]['image'] = $row['image'];
$productList[$i]['price'] = $row['price'];
$productList[$i]['is_new'] = $row['is_new'];
$i++;
}
return $productList;
}
答案 0 :(得分:1)
根据PDO :: query的文档说:
PDO :: query()返回PDOStatement对象,或者失败时返回FALSE。
您的SQL查询出错了,所以请确保它是正确的。
答案 1 :(得分:0)
您在查询中有错误,因此" $ db-> query()"返回null或false。您可以打印您的查询并将其存储在mysql控制台中。
答案 2 :(得分:-1)
Statut可能是一个int,所以只需删除' '