繁体   English   中英

PDO where子句和Limit不能同时工作

[英]PDO where clause and Limit can not work at a time

  function manage_user($startFrom = 0, $itemPerPage = 5)
    {
        $_userData = array();
        $this->db->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false);
        $query = $this->db->prepare("SELECT * FROM `user_info` LIMIT ?, ? WHERE `user_info`.`status` = ? ");
        $query->execute(array($startFrom,$itemPerPage,'active')) or die(print_r($query->errorInfo(), true));
        $result = $query->fetchAll(\PDO::FETCH_ASSOC);
        foreach ($result as $row) {
            $_userData[] = $row;
        }
        return $_userData;
    }

如果仅使用限制,则可以正常工作。使用where子句时会出错。
致命错误:在非对象上调用成员函数execute()
$ query-> execute()行上

您一起放错了LIMITWHERE子句。 WHERE应该位于LIMIT子句之前,如下所示。 而且,没有ORDER BYLIMIT子句几乎没有意义。

WHERE `user_info`.`status` = ? LIMIT ?, ? 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM