我正在做下面的查询。如果我把数字直接放入查询中,查询将返回很多结果...现在,如果我使用bindParam传递值,则不会有结果。当使用PDO :: bindParam时,我的查询返回没有结果
我测试是否传递的值具有值和回波显示,他们这样做...所以我不知道为什么会这样
谁能告诉我什么我做错了什么?
public function searchWithPagination($startPage = 0, $numberResultsPerPage = 10) {
$q = $this->db->prepare('SELECT * FROM ecm LIMIT :startpage, :numberresultsperpage');
$q->bindParam(':startpage', $startPage);
$q->bindParam(':numberresultsperpage', $numberResultsPerPage);
$q->execute();
echo $numberResultsPerPage . $startPage ;
$f = $q->fetchAll();
var_dump($f);
}
编辑:试图PDO::PARAM_INT
仍然不起作用
改为尝试bindValue。在用户在PHP手册中提交的注释(http://www.php.net/manual/en/pdostatement.bindvalue.php)中有关于bindParam传递引用的注释。 – GarethL
首先,PDO :: PARAM_INT ** [does work](http://stackoverflow.com/a/15991623/285587)**。其次,[PDO查询失败,但我看不到任何错误。如何从PDO获取错误消息?](http://stackoverflow.com/a/15990858/285587) –
@GarethL使它工作!谢谢。请将其发布为答案 –