我想學習使用PDO,而不是庫MySQLi數據庫訪問,我有麻煩了從數據庫中選擇數據PDO數據庫訪問。我想用:
$STH = $DBH->query('SELECT * FROM ratings WHERE title=$title ORDER BY date ASC');
$STH->setFetchMode(PDO::FETCH_ASSOC);
while($row = $STH->fetch()) {
echo $row['title'];
}
,但我得到這個錯誤:
Fatal error: Call to a member function setFetchMode() on a non-object in /home/owencont/public_html/owenstest.com/ratemystudents/index.php on line 6
如果我參加了WHERE語句,它工作正常。我如何根據它的值是否與變量匹配來選擇一行?
感謝,
歐文
不應該這樣來工作呢? \t $ title ='the title'; \t \t $ title = $ DBH-> quote($ title); \t $ STH = $ DBH-> prepare(「SELECT * FROM ratings WHERE title =?ORDER BY date ASC」); \t $ STH-> execute(array($ title)); \t \t while($ row = $ STH-> fetch(PDO :: FETCH_ASSOC)){ \t \t echo $ row ['title']; \t \t} – 2011-03-07 18:13:47
@Owen:不,只做其中的一個。用 - > prepare和 - >執行 - >引用或'?'綁定參數。 – mario 2011-03-07 18:17:39
謝謝你的幫助,你的方法似乎是最好和最安全的。 – 2011-03-07 18:22:52