Php pg_获取_数组错误

Php pg_获取_数组错误,php,html,postgresql,Php,Html,Postgresql,这是我当前的PHP代码: $sql = 'SELECT * from comments where post_id_fk=$post_id'; $users = $db->prepare($sql); $users->execute(); while($row = pg_fetch_array($users, 0, PGSQL_ASSOC)) 由于某些原因,我不断收到以下错误: 警告:pg_fetch_array()希望参数1是第39行/home/se212004/public

这是我当前的PHP代码:

$sql = 'SELECT * from comments where post_id_fk=$post_id';

$users = $db->prepare($sql);
$users->execute();

while($row = pg_fetch_array($users, 0, PGSQL_ASSOC))
由于某些原因,我不断收到以下错误:

警告:pg_fetch_array()希望参数1是第39行/home/se212004/public_html/content.html中给定的资源和对象`


行号是指带有
while
循环的行。我已经多次尝试修复它,但无法使其正常工作。

您正在使用PDO来准备和执行语句,我相信您也应该使用它来获取结果。所以,基本上,你必须这样做:

$sql = 'SELECT * from comments where post_id_fk=$post_id';

$users = $db->prepare($sql);
$users->execute();

$results = $users->fetchAll();
或者你可以:

$sql = 'SELECT * from comments where post_id_fk=$post_id';

$users = $db->prepare($sql);
$users->execute();

while ($row = $users->fetch(PDO::FETCH_ASSOC)){
      // do something with each row
}

您的查询中有一个错误。使用
pg\u result\u error()
查看它是什么。