我有其他PDO聲明執行得很好,但是這個是搞砸了。爲什麼這個PDOStatement不能正確執行?
$sth = $dbh->prepare('SELECT * FROM `post` LIMIT ?,?');
$sth->execute(array(0, 10));
以上不工作,但下面不工作:
$sth = $dbh->prepare('SELECT * FROM `post` LIMIT 0,10');
$sth->execute(array(0, 10));
那麼爲什麼不會第一種方式顯示任何我的結果的時候,應該給予同樣的反應?
所以這是我現在
$start = 0;
$perpage = 10;
$sth = $dbh->prepare('SELECT * FROM `post` LIMIT ?,?');
$sth->bindValue(1, $start, PDO::PARAM_INT);
$sth->bindValue(2, $perpage, PDO::PARAM_INT);
$sth->execute();
這也不起作用
$sth = $dbh->prepare('SELECT * FROM `post` LIMIT ?,?');
$sth->bindParam(1, 0, PDO::PARAM_INT);
$sth->bindParam(2, 10, PDO::PARAM_INT);
$sth->execute();
你可以改變陣列(0,10)以陣列(0,10),看看它是否工作 – Satya
對不起,那是一個錯字。沒有第二個逗號,它仍然不起作用。 :( – Dominick
和第二個逗號不是拼寫錯誤,php不禁止它 – artragis