如何在Codeigniter中使用查询LIKE选择所有数据

时间:2017-12-10 06:21:26

标签: mysql codeigniter query-builder

为什么我不能使用'%'或者''在LIKE查询构建器中选择所有数据?

我尝试在SQL shell中可以,但在查询构建器中不能

我的模特

public function ajax_getTargetMhs($where,$where2) {
        $this->db3->SELECT("nim,nama,kodeunit")
                    ->FROM("akademik_ms_mahasiswa")
                    ->LIKE('kodeunit',$where)
                    ->LIKE('periodemasuk',$where2);
        $query = $this->db3->get();
        if( $query->num_rows() > 0 ) {
            return $query->result();
        } else {
            return array();
        }
    }

我的控制器

public function getTargetMhs($where,$where2) {
        $json =$this->Survey_Model->ajax_getTargetMhs($where,$where2);
        $arr = array();
            foreach ($json as $results) {
            $arr['data'][] = array(
                   $results->nim,
                   $results->nama,
                   $results->kodeunit
                    );
            }
         //save data mysql data in json encode format       
          echo json_encode($arr);
    }

我无法像这样访问

'ajax': "<?php echo base_url(); ?>survey/getTargetMhs/"+'SINF/'+'%',

1 个答案:

答案 0 :(得分:0)

方法like()接受第三个参数,该参数描述“匹配”字符串的哪个“边”以放置通配符。可接受的值为“none”,“left”,“right”,“both”。

如果您没有传递“side”值,则使用“both”。不确定哪个是你的正确选择。如果你想自己构建整个匹配参数,那么'none'应该可以工作。

like() HERE

上的文档