Codeigniter 数据库区分大小写

Codeigniter database make case sensitive

我在登录系统时需要考虑区分大小写。但是密码不区分大小写。

    $this->db->select('user.*,userprofile.*,user.id as uid');
    $this->db->from('user');
    $this->db->join('userprofile', 'userprofile.id = user.id');
    $this->db->like('email', $udata['email']);
    $this->db->like('password', $udata["password"]);
    $query = $this->db->get();

以上是我的查询。我如何更改它以使其区分大小写?

一种可能的方法是

$this->db
    ->select('user.*,userprofile.*,user.id as uid')
    ->from('user')
    ->join('userprofile', 'userprofile.id = user.id')
    ->where('email', $udata['email'])
    ->where('BINARY password =', $this->db->escape($udata["password"]), false)
    ->get();

For more information take a look here

我更改了我的变量名称以分别获取这两个变量并在 'where'.

中使用了 LIKE

我改变了这个:

$this->db->like('password', $udata["password"]);

$this->db->where('password LIKE binary', $password);