开发者

Query bindbing for SQL LIKE in Codeigniter

开发者 https://www.devze.com 2023-02-22 05:41 出处:网络
So, the following doesn\'t seem to work. What am I missing? $sql = \"SELECT item_id, item_name, category_name, user_data.value

So, the following doesn't seem to work. What am I missing?

$sql = "SELECT item_id, item_name, category_name, user_data.value
                FROM
                    items, item_category, user_data
                WHERE
                    items.user_id = ?
                        AND item_name LIKE ?
             开发者_运维技巧           AND item_location = user_data.id
                        AND item_category = category_id
                ORDER BY item_name";

$query = $this->db->query($sql, array($this->user_id, $search_term));


Ok, I figured it out. Everything else is fine, except I modified the binding as follows.

$query = $this->db->query($sql, array($this->user_id, '%'.$this->db->escape_like_str($search_term).'%'));


In CI4 you can use bindbing in this mode

$data = $this->getData();
$sql  = "SELECT * FROM users WHERE name_user LIKE :name_user: LIMIT 10";

$bind =
[
   'name_user' => "%{$data['name_user']}%",
];

return $this->db->query($sql,$bind)->getResultArray();
0

精彩评论

暂无评论...
验证码 换一张
取 消