Kontroler:
function login() { $this->form_validation->set_rules('login_log', 'Login', 'trim|required|callback_checkLoginLog'); $this->form_validation->set_rules('password_log', 'Hasło', 'trim|required|callback_checkPasswordLog'); if ($this->form_validation->run() == FALSE) { //nie zalogowany $this->session->set_flashdata('item', array('message' => validation_errors(), 'class' => 'danger')); redirect("/"); } else { $login = $this->input->post('login'); $password = $this->input->post('password'); $result = $this->Model_User->login($login, $password); if ($result) { //1 redirect("/"); } else{ //2 } } }
Model:
public function login($login, $password) { //pobranie hash $this->db->select('password'); $this->db->from('user'); $this->db->where('login', $login); $query = $this->db->get(); if ($query->num_rows() == 1) { $result = $query->result_array(); foreach ($result as $item) { if(password_verify($password,$item['password'])) { return TRUE; } else{ return FALSE; } } } else{ return FALSE; } }
//
W postaci:
$this->Model_User->login($login, $password); redirect("/");
działa ok, dalczego?