代码点火器"必需"验证即使在有效输入上也会引发错误



我有一个简单的表单,其中手机号码的输入字段被提供给用户,在提交时,它通过验证规则进行验证,然而,尽管在输入标签中预先填充了值,但仍会引发所需的字段错误。

[$this->form_validation->set_rules('mobile','Mobile','trim|required|numeric|exact_length[10]|callback_checkMobile');][1]

public function checkMobile($number){
if ($e_name=$this->HomeModel->isDuplicateMobile($number)) {
if ($this->session->userdata('admin_name')) {
if ($e_name!=$this->session->userdata('admin_name')) {
$this->form_validation->set_message('checkMobile','The {field} Number already registered to '.$e_name.'.');
return false;
}
} elseif ($this->session->userdata('user_name')) {
if ($e_name!=$this->session->userdata('user_name')) {
$this->form_validation->set_message('checkMobile','The {field} Number already registered to '.$e_name.'.');
return false;
}
}
} else {
return true;
}

}


<input class="<?=(form_error('mobile'))?'is-invalid':'is-valid'?> form-control" type="text" name="mobile" value="<?=set_value('mobile',$e_mobile)?>">

使用这个"is_unique">

$this->form_validation->set_rules('mobile','Mobile','trim|required|numeric|is_unique[table.fieldName]');

if($this->input->post('mobile') != $original_value) {
$is_unique =  '|is_unique[table.fieldName]'
} else {
$is_unique =  ''
}
$this->form_validation->set_rules('user_name', 'User Name', 'required|trim|xss_clean'.$is_unique);

最新更新