php - 如何在 Codiginator 模型不敏感查询中创建 SQL 查询 - SQL LIKE 查询

标签 php mysql

我在 Codeignitor 中设计了一个应用程序,在这里我根据联系人姓名、公司名称、电子邮件 ID、手机号码搜索查询。我正在使用 CI ORM 语句执行数据库查询 - 有没有人知道我如何忽略这些列中的大小写,因此所有大写或小写字母的列都没有影响。

这是我用于搜索查询的模态函数:

public function search1($from1, $to1, $q)
{
    if(empty($q))
    {
        $this->db->where("enq_date >=",$from1);
        $this->db->where("enq_date <=",$to1);
        return $this->db->get('enq_capture')->result();
    }
    else
    {       
        $where = array('enq_date>=' => $from1, 'enq_date <=' => $to1);                      
        $query=$this->db->select('*')
                    ->from('enq_capture')
                    ->where($where)
                    ->like('company_name',$q)
                    ->or_like('c_person',$q)
                    //->or_like('email',$q)
                    ->get();

        //print_r($query);
        return $query->result();
    }
}

这是我的 Controller 函数:

public function search1()
{
    $data['user_data']=$this->is_logged_in();
    $q=$this->input->post('searchid');
    $from1=$this->input->post('from1');
    $to1=$this->input->post('to1');
    $data['search_data']=$this->Enquiry_model->search1($from1,$to1,$q);
    $this->load->view('admin1/enquiry/search_enquiry1',$data);
}

最佳答案

使用 LOWER() 函数

$query = $this->db->query("SELECT * FROM enq_capture WHERE enq_date >= '{$from1}' AND enq_date <= '{$to1}' AND (LOWER(company_name) LIKE '%{$qLower}%' OR LOWER(c_person) LIKE '%{$qLower}%')");
return $query->result();

关于php - 如何在 Codiginator 模型不敏感查询中创建 SQL 查询 - SQL LIKE 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44367327/

相关文章:

javascript - PHP 和 JavaScript - 变量

PHP fatal error : require_once(): Failed opening required 'Zend/Gdata/Extension.php'

mysql - 获取有关注者和无关注者的用户

mysql - MySQL 中使用 Join 删除

php - 左连接上的重复查询

php - 如何将数据从 php 发送到 R 脚本以根据该数据进行一些预测?

php - 将 php 文本输出发送到客户端浏览器并在服务器端运行 rest

mysql - Cron 作业检查数据库中的日期并发送通知

javascript - Symfony2 嵌入式表单删除按钮功能

php - 按特定值获取 JSON 数据