我之前使用此代码从数据库中获取记录:
function shapp_get_sections_with_company_id($db, $id)
{
try
{
$que = $db -> query("SELECT * FROM company_sections WHERE company_id = '$id'");
$result = $que -> fetchAll(PDO::FETCH_ASSOC);
return $result;
}catch(PDOException $ex)
{
echo $ex -> getMessage();
}
}
工作正常。它做了它的工作。
但是我正在尝试使其适应于准备好的语句。
我已经对此进行了修改,但是我没有任何运气。显然,这将返回一个空结果集:
function shapp_get_sections_with_company_id($db, $id)
{
try
{
$que = $db -> prepare("SELECT * FROM company_sections WHERE company_id = '?'");
$que -> execute(array($id));
$result = $que -> fetchAll(PDO::FETCH_ASSOC);
return $result;
}catch(PDOException $ex)
{
echo $ex -> getMessage();
}
}
我也尝试过返回“ $ que-> execute(...)”,但是它没有返回结果集。
请问我可以通过准备好的语句获得帮助吗?
最佳答案
从“?”中删除单引号在准备电话中$que = $db -> prepare("SELECT * FROM company_sections WHERE company_id = ?");
关于php - 使用PDO的预备语句获取数据库记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19202990/