我正在尝试从MySQL数据库中获取一个列表,它通常工作正常。但是今天我得到了这个错误Fatal error: Call to a member function setFetchMode() on a non-object in "Way too long path to file here"
。
这是我的PHP代码:
$conn = new PDO('mysql:host=localhost;port=3306;name=erty', 'erty', 'Ops, that my password ...');
$result = $conn->query("SELECT name FROM mod_devs");
$result->setFetchMode();
foreach ($result as $row) {
echo '<tr><td>'.$row['name'].'</td></tr>';
}
现在,您可能已经理解了我的目标:)
通常Call to a member function setFetchMode() on a non-object
表示$result不可用。可能是因为MySQL错误——无论是在连接还是查询中。检查if($conn)
或if($result)
。
您仍然需要获取结果。。。所以不是前臂。。。。在。。。
while ($row = $result->fetch()) {
//your code here
}
您可能需要准备而不是查询
$result = $conn->prepare("SELECT name FROM mod_devs");
或者这个
$result->setFetchMode(PDO::FETCH_OBJ);
我刚刚发现错误。在连接中,我写了name=erty
而不是dbname=erty
!
很抱歉占用您的时间:(