【问题标题】:PDO with limit and offset not working....so of具有限制和偏移的 PDO 不起作用....所以
【发布时间】:2015-01-12 11:37:57
【问题描述】:

我正在为我的应用程序使用分页。我将限制设置为 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 

【问题讨论】:

  • 我尝试在函数开头回显传递的参数的值。对于第二页,我得到 25 25 echo $limit;回声 $offset:

标签: mysql pdo limit offset using


【解决方案1】:

答案:

输入参数

$limit = (int)$limit; 偏移量 = (int)$offset;

【讨论】:

    猜你喜欢
    • 2018-02-16
    • 2017-05-03
    • 1970-01-01
    • 2014-07-25
    • 2019-09-06
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多