2010-09-08 49 views
0

有沒有一種方法來設置驗證回調,而不是綁定到特定的字段,但有必要通過驗證?CodeIgniter表單驗證 - 回調沒有綁定到一個字段

+0

要設定所有字段必須通過規則?你能給個例子嗎? – 2010-09-08 03:55:13

+0

嗯,我有一個相對複雜的動態形式...我有一個表格部分,動態填充以顯示人名,複選框和相應的文本輸入。文本輸入僅在其各自的複選框被選中時才重要。爲了驗證通過,必須至少檢查一個複選框,並且它的文本輸入必須有一個值。我創建了回調,它的工作原理,我只是不知道要綁定到 – andrhamm 2010-09-12 15:58:57

回答

0

將一個隱藏字段添加到您的表單中, 將該回調分配給 字段。該回調無需涉及 隱藏的 字段的內容。

編輯:或者,就此而言,您可以將回調分配給其他驗證規則的任何字段。不需要隱藏字段。

1

是的,你可以在這裏是一個眉頭,例如:

$this->load->library('form_validation'); 
$this->form_validation->set_rules('username', 'lang:lang_username', 'required|callback_check_login'); 

然後回調:

public function check_login($username) 
{ 
    $username = $this->input->post('username'); 
    $password = $this->input->post('password'); 
    $remember = $this->input->post('remember'); 

    $login = $this->users_auth->login($username, $password, $remember); 
    if ($login !== TRUE) 
    { 
     $this->form_validation->set_message('check_login', $login); 
     return FALSE; 
    } 
    else 
    { 
     return TRUE; 
    } 
} 
+0

良好的迴應埃裏克。 – janosrusiczki 2010-09-09 05:25:32