Php 为什么我会得到这个;调用非对象上的成员函数fetch_assoc();错误?

Php 为什么我会得到这个;调用非对象上的成员函数fetch_assoc();错误?,php,mysql,Php,Mysql,为什么这个代码不起作用?当PHP达到这一点时,我遇到了“调用非对象上的成员函数fetch_assoc()”错误 $result = $db->query("SELECT * FROM users"); while ($row = $result->fetch_assoc()) { print_r($row); // echo "<tr&

为什么这个代码不起作用?当PHP达到这一点时,我遇到了“调用非对象上的成员函数fetch_assoc()”错误

                $result = $db->query("SELECT * FROM users");
                while ($row = $result->fetch_assoc()) {
                    print_r($row);
                    // echo "<tr><td>" . $row["username"] . "</td> <td>" . $row["wins"] . "</td> <td>" . $row["losses"] . "</td></tr>\n";
                }
$result=$db->query(“从用户中选择*);
而($row=$result->fetch_assoc()){
打印(行);
//回显“$row[“username”]。$row[“wins”]。$row[“loss”]。\n”;
}

我可以包括额外的信息,但这是我认为相关的所有信息。

基本上,$result不是一个对象。检查SQL查询是否返回结果,以及$result是否应该是php对象。

您使用什么?MySQLi?如果在$db->query()之后是写入:

if(!$result)
    echo $db->error;
else
{
    while ($row = $result->fetch_assoc()) {
        print_r($row);
        // echo "<tr><td>" . $row["username"] . "</td> <td>" . $row["wins"] . "</td> <td>" . $row["losses"] . "</td></tr>\n";
    }
}
if(!$result)
echo$db->错误;
其他的
{
而($row=$result->fetch_assoc()){
打印(行);
//回显“$row[“username”]。$row[“wins”]。$row[“loss”]。\n”;
}
}

因为
$db->query
失败。您确定在键入问题标题时没有得到可能重复的问题的完整列表吗?但是在PHP手册中,他们使用的
fetch\u assoc()
函数与我完全相同@Doug否,您可能注意到他们在手册中对查询结果进行了错误检查。确切地说,在执行while循环之前,您应该检查$result是否是您期望的结果。