【发布时间】:2014-01-14 14:24:53
【问题描述】:
function __construct(mysqli $db, $country = NULL, $sport = NULL) {
$this->db = $db;
$this->country = base64_decode($country);
$this->sport = base64_decode($sport);
}
public function GetColor($colorcode) {
$query = 'SELECT naam_nl FROM colors WHERE code = $colorcode';
$result = $this->db->query($query);
while ($row = $result->fetch_assoc()) { // Line 21
echo $row['naam_nl'];
}
$result->close();
}
给我:
Fatal error: Call to a member function fetch_assoc() on a non-object in /home/cloud/public/td/teamdresser.class.php on line 21
所以我尝试了:
$result = $this->db->query($query);
while ($row = $this->db->fetch_assoc($result)) {
echo $row['naam_nl'];
}
然后……
Fatal error: Call to undefined method mysqli::fetch_assoc() in /home/cloud/public/td/teamdresser.class.php on line 21
我做错了什么..有人能指出我正确的方向吗?
【问题讨论】:
-
关键是您的查询返回了其他内容,然后是 mysqli_result 对象。可能是
false。 -color字段是数值吗?如果不是你错过了查询中的引号 -
做一些错误检查。您的查询失败。检查
$this->db->query($query)的返回值,如果是false,检查$this->db->error的错误信息。