2013-10-05 23 views
0

我使用此代码之前来从一个数据库中的记录:正在提取数据库记录随着PDO的准备语句

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(); 
    } 
} 

我也试图返回“$阙 - >执行(......)”,但它并没有返回结果集。 我可以通过准备好的陈述获得任何帮助吗?

回答

1

删除'?'中的单引号在拨打电话

$que = $db -> prepare("SELECT * FROM company_sections WHERE company_id = ?");

+0

* Facepalms * darn我有时可能有点傻。谢谢你,先生。这个窍门哈哈。我会在10分钟内接受你的回答。 –