db中带有附加值的搜索值 - Codeigniter

时间:2011-05-05 05:50:39

标签: php search codeigniter

使用Codeigniter。

使用Active Records运行查询。

我有一个搜索框来搜索关键字。

我在视图中的返回查询ID号前面附加了一个前缀。例如:1 = bk001。

我如何搜索'bk001'我可以通过输入“1”来搜索bk001但我希望bk001可搜索

   $query =  $this->db->select('id, name, title')
                ->from('books')
                ->like('name', $search)
                ->or_like('id', $search);


    $ret['rows'] = $query->get()->result();

1 个答案:

答案 0 :(得分:0)

你仍然需要像普通的查询一样格式化它,所以

$query =  $this->db->select('id, name, title')
            ->from('books')
            ->like('name', $search)
            ->or_like('id', "%$search");

$ret['rows'] = $query->get()->result();

将返回bk001bk011bksidfhskdfhks31(只要它结束1)。

$query =  $this->db->select('id, name, title')
            ->from('books')
            ->like('name', $search)
            ->or_like('id', "%$search%");

$ret['rows'] = $query->get()->result();
如果在ID中找到 ANYWHERE ,则会返回

请注意,我假设您只想要这个ID,如果您想要它的名称,您仍然需要修改名称。