유효성 검사가 실패 할 때 CodeIgniter에서 양식 값을 유지하는 데 이상한 오류가 발생했습니다. 양식에서 많은 필드를 사용하고 있는데 그 중 하나는 전자 메일입니다. 형태 Codeigniter가 전자 메일 필드 값을 유지하지 않음
function validateEmail($email){
$this->load->helper('email');
if((!valid_email($email))){
$this->form_validation->set_message('validateEmail',
'The E-Mail you entered is invalid');
return false;
}
}
, 내가 다음 코드를 사용하고 다음과 같이
$this->form_validation->set_rules('email','E-Mail',
'trim|required|xss_clean|is_unique[user.user_email]|callback_validateEmail');
validateEmail
기능은 다음과 같습니다 : I는 전자 메일에 대한 유효성 검사 규칙을 구현 한
전자 메일 필드 :
<td align="left">
<input type="text" name="email" id="email"
value="<?php echo set_value('email');?>">
</td>
전자 메일 값은 그대로 유지됩니다. 사용자가 "abc123"또는 "abc123 @"와 같은 잘못된 전자 메일 값을 입력합니다. 그러나 사용자가 올바른 전자 메일 주소 (예 : "[email protected]")를 입력하고 다른 필드의 오류로 인해 양식 유효성 검사가 실패하면 전자 메일 필드의 값이 보존되지 않고 사라집니다.
나는 이것이 실패하는 이유를 전혀 모른다. 누군가가 약간의 빛을 던질 수 있습니까?
미리 감사드립니다.
CodeIgniter는 A ['valid_email' 규칙]이 (http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#rulereference) 기본적으로 폼 검증 라이브러리에 내장 - 아니 콜백이 필요합니다. –