Codeigniter表單驗證很好,但它很麻煩,因爲它重定向到另一個url來驗證表單。因爲有時我們在網址中有段。重定向會丟失細分。在其他情況下,用戶直接輸入驗證URL。在我的例子mywebsite.com/class/login_validation的例子。 那麼如何驗證沒有重定向或阻止用戶直接鍵入驗證URL。codeigniter:無重定向的驗證表格
我的觀點
<?php
echo validation_errors();
echo form_open('login_validation');
echo form_label('Username');
echo form_input('username',$this->input->post('username'));
echo form_label('Passowrd');
echo form_password('password',$this->input->post('password'));
echo form_submit('submit','Login');
echo form_close();
?>
我控制器
function login() {
$this->load->helper('form');
$this->load->view('page/login');
}
function login_validation() {
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'User Name', 'required|xss_clean|callback_check_user');
$this->form_validation->set_rules('password', 'Password', 'required|xss_clean');
if ($this->form_validation->run()) {
$newdata = array('username' => $this->input->post('usertname'),
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
redirect('dashboard');
} else {
$this->load->view('page/login');
}
}
您需要使用ajax,看起來像是一個可能的重複http://stackoverflow.com/questions/17699201/php-codeigniter-ajax-form-validation – wakqasahmed