加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何在CodeIgniter中检查多个值是唯一的

发布时间:2020-12-13 17:49:02 所属栏目:PHP教程 来源:网络整理
导读:我有一个用于注册用户的html表单.我想在codeIgniter中应用一个条件,如果有人写了数据库中已存在的2个输入字段(firstname和lastname),则不允许插入数据. 就像我可以写 $this-form_validation-set_rules('firstname','First Name','required|is_unique[student
我有一个用于注册用户的html表单.我想在codeIgniter中应用一个条件,如果有人写了数据库中已存在的2个输入字段(firstname和lastname),则不允许插入数据.
就像我可以写

$this->form_validation->set_rules('firstname','First Name','required|is_unique[student.firstname]');
$this->form_validation->set_rules('lastname','Last Name','required|is_unique[student.lastname]');

如何申请?两者都应该是独一无二的,但已经存在.我想要“结合独特的价值”之类的东西

例:

First Name: Ali

Last Name: Mohyudin

如果有人在两个字段中再次写入相同内容,那么我不想在数据库中插入数据,但如果有人写了类似的内容:

First Name: Ali

Last Name: Imran

那我应该接受用户.

解决方法

您可以在验证中使用回调来完成

$this->form_validation->set_rules('firstname','required|callback_check_user');// call callback function

$this->form_validation->set_rules('lastname','required');

检查名字和最后一个组合的组合

function check_user() {
    $first_name = $this->input->post('firstname');// get fiest name
    $last_name = $this->input->post('lastname');// get last name
    $this->db->select('user_id');
    $this->db->from('student');
    $this->db->where('firstname',$first_name);
    $this->db->where('lastname',$lase_name);
    $query = $this->db->get();
    $num = $query->num_rows();
    if ($num > 0) {
        return FALSE;
    } else {
        return TRUE;
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读