簡體   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