ciao!!
devo fare un login che interroga due tabelle.
in pratica se trova i dati nella prima fa il login, sennò interroga la seconda.
nella seconda se trova i dati fa il login, sennò messaggio di errore.
avevo provato così:
Codice PHP:
public function doLogin() {
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'Username', 'trim|required');
$this->form_validation->set_rules('password', 'Password', 'trim|required|sha1|callback_tbl1');
if ($this->form_validation->run() == FALSE) {
$data = array();
$data['titolo'] = 'Login';
$this->load->view('header', $data);
$this->load->view('login_view', $data);
$this->load->view('footer');
} else {
redirect('home', 'refresh');
}
}
function tbl1($password) {
$username = $this->input->post('username');
$result = $this->username->logintbl1($username, $password);
if ($result) {
$sess_array = array();
foreach ($result as $row) {
$sess_array = array(
...............
);
$this->session->set_userdata(...............);
}
return TRUE;
} else {
tbl2($username, $password);
}
}
function tbl2($user, $password) {
$username = $user;
$result = $this->username->logintbl2($username, $password);
if ($result) {
$sess_array = array();
foreach ($result as $row) {
$sess_array = array(
..................
);
$this->session->set_userdata(............);
}
return TRUE;
} else {
$this->form_validation->set_message('tbl2', 'Invalid username or password');
return FALSE;
}
}
se i dati nella prima tabella sono giusti allora viene fatto il login.
sennò si blocca, come se nn riuscisse ad eseguire il controllo sulla seconda.
mi date una mano please??