PDO的限制和偏移不起作用....所以

时间:2014-11-14 23:59:57

标签: mysql pdo limit offset using

我正在为我的申请使用分页。我将限制设置为25.对于特定页面,第一页显示25条记录。如果我尝试后续链接,我得不到任何结果。如果我将数字放入POD sql语句中,它可以正常工作。继承我的代码:

public function list_all($limit, $offset)
{
        $sql = 'SELECT * FROM patients LIMIT :limit OFFSET :offset';
        $stmt = $this->db->prepare($sql);
        $stmt->bindParam(':limit', $limit, PDO::PARAM_INT);
        $stmt->bindParam(':offset', $offset, PDO::PARAM_INT);

        $stmt->execute();
        $stmt->debugDumpParams();
        return $stmt->fetchAll(PDO::FETCH_CLASS);
}

在第二页上调试呈现以下内容:

SQL: [50] SELECT * FROM patients LIMIT :limit OFFSET :offset Params: 2 Key: Name: [6] :limit paramno=-1 name=[6] ":limit" is_param=1 param_type=1 Key: Name: [7] :offset paramno=-1 name=[7] ":offset" is_param=1 param_type=1 

1 个答案:

答案 0 :(得分:0)

答案:

输入参数

$ limit =(int)$ limit; offset =(int)$ offset;