我正在使用codeigniter框架。我有一個登錄模型和一個帶有視圖的控制器。我有admin用戶名和管理員密碼在我的db用戶表中設置用於測試目的。 但是,當我使用admin13356或admindsgsd或adminWHATEVER和admin作爲密碼時,登錄成功。我不明白爲什麼。Codeigniter在登錄控制器上給出不尋常的結果
我的控制器功能如下。
function check(){
$this->load->model('loginModel');
$query = $this->loginModel->validate();
if($query){
$data = array('username' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
//redirecting to appropriate page
redirect('success');
}else{
$this->session->set_flashdata('loginCheck','Username/Password Comination Incorrect!');
redirect('login');
}
}
而我的模型如下。
function validate(){
$this->db->where('username', $this->input->post('username'));
$this->db->where('password', md5($this->input->post('password')));
$query = $this->db->get('users');
if($query->num_rows() == 1){
return true;
}
}
的代碼看起來不錯,但我會從模型中取出後的數據變量,而不是在控制器創建變量,並通過他們作爲你的'validate()'函數的參數。 – Jeemusu