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