2010-06-13 3 views
2

양식 도우미를 사용하여 작성된 간단한 문의 양식에 유효성 검증을 설정하려고합니다. 유효성 검사는 전혀 발생하지 않습니다. 뭐가 잘못 되었 니?CodeIgniter 폼 유효성 검사가 작동하지 않는 이유는 무엇입니까?

아래 코드에서 "good"키워드는 양식에 입력 된 것과 관계없이 항상 표시되며 set_value를 통해 설정된 저장된 값은 표시되지 않습니다.

컨트롤러

// Contact 
    function contact() { 
     $data['pageTitle'] = "Contact"; 
     $data['bodyId'] = "contact"; 

     $this->load->library('form_validation'); 

     $config_rules = array ('email' => 'required','message' => 'required'); 

     $this->form_validation->set_rules($config_rules); 

     if ($this->form_validation->run() == FALSE) { 
      echo "bad";    
      $data['include'] = "v_contact";  
      $this->load->view('v_template',$data); 

     } else { 
      echo "good"; 
      $data['include'] = "v_contact";   
      $this->load->view('v_template',$data); 
     } 

    } 

보기 새 Form_validation 라이브러리가 그것을 수행하는 방법에 따라 유효성 검사 규칙을 설정하지 않는 것 같습니다

echo validation_errors(); 
echo form_open('events/contact'); 

// name 
echo form_label('Name', 'name'); 
$data = array (
     'name' => 'name', 
     'id' => 'name', 
     'maxlength' => '64', 
     'size' => '40', 
     'value' => set_value('name') 
    ); 
echo form_input($data) . "\n<br />"; 

// email address 
echo form_label('Email Address', 'email'); 
$data = array (
     'name' => 'email', 
     'id' => 'email', 
     'maxlength' => '64', 
     'size' => '40', 
     'value' => set_value('email') 
    ); 
echo form_input($data) . "\n<br />"; 

// message 
echo form_label('Message', 'message'); 
$data = array (
     'name' => 'message', 
     'id' => 'message', 
     'rows' => '8', 
     'cols' => '35', 
     'value' => set_value('message') 
    ); 
echo form_textarea($data) . "\n<br />"; 

echo form_submit('mysubmit', 'Send Message'); 

echo form_close(); 

답변

3

가 (사용자 가이드는있다 새 구문에 section). 그것은 이전 Validation 라이브러리의 구문 인 것 같습니다. 유효성 검사가 제대로 실행하는 경우

는 대신 $config_rules 배열이 시도하고 참조 :

$config_rules = array(
    array('field' => 'email', 'rules' => 'required'), 
    array('field' => 'message', 'rules' => 'required') 
); 

$this->form_validation->set_rules($config_rules); 
관련 문제