【发布时间】:2020-11-12 20:17:00
【问题描述】:
我需要在数据库中的搜索更敏感,并识别大小写之间的区别,如密码。
型号
function checker(){
$this->db->select('*');
$this->db->from('gift_cards');
$this->db->join('gift_partners', 'gift_partners.gp_id = gift_cards.gift_part_id');
if(isset($_POST["redeem"])){
$redeemvalue=$this->input->post("redeem");
$this->db->where('gift_id',$redeemvalue);
}else{
$this->db->where('gift_code',$this->input->post('gift_code'));
$this->db->where('gift_part_id',$this->input->post('partner'));
}
$data=$this->db->get();
if ($data->num_rows() > 0) {
foreach ($data->result_array() as $row) {
$dt[] = $row;
}
return $dt;
}else{
return false;
}
}
我需要更敏感的礼品代码,我使用了 WHERE 条件,但如果我用大写或小写搜索返回相同的结果。
$this->db->where('gift_code',$this->input->post('gift_code'));
【问题讨论】:
-
您使用的是哪个数据库?
gift_code列的类型是什么? -
@Vickel MySQL,列类型为varchar
-
“Like passwords”听起来很奇怪 - 您是否未加密存储它们?
-
我刚刚检查了 myAdmin,列 gift_code 设置为:varchar(128),排序规则:latin1_bin:WHERE 查询绝对区分大小写!
-
@Vickel 谢谢。
标签: mysql codeigniter