1
我在Codeigniter會話中遇到問題,當我登錄時,系統正在工作並且會話已設置,但是當我在瀏覽器中打開新選項卡並再次登錄時,當前會話被新記錄的會話。我想要實現的是如果會話已設置,則直接重定向到主頁,如果未設置會話,則繼續登錄頁面。防止在CodeIgniter中替換會話
我的確研究了一些這方面的問題,不知怎的,我嘗試了這個,但沒有像預期的那樣工作。
控制器:
public function index(){
if(isset($_SESSION['Username'])){
redirect('Isidran/home' , 'refresh');
} else {
$data['title'] = 'Isidran Club and Organization Online Information System - Login';
$this->load->view('pages/login/index', $data);
}
}
型號:
public function login($data)
{
$username = $data['username'];
$password = $data['password'];
$query =$this->db->query("SELECT * FROM tbl_user WHERE user_Username ='$username' AND user_Password ='$password'");
$row =$query->row();
if(isset($row)){
$user_ID =$row->user_ID;
$username =$row->user_Username;
$FirstName=$row->user_FirstName;
$LastName = $row->user_LastName;
if($row->user_level == 0){
$permission = TRUE;
$userdata = array('user_ID' => $user_ID, 'Username' => $username, 'FirstName' => $FirstName, 'LastName' => $LastName, 'logged_in' => TRUE, 'permission' => $permission);
} else {
$userdata = array('user_ID' => $user_ID, 'Username' => $username, 'FirstName' => $FirstName, 'LastName' => $LastName, 'logged_in' => TRUE);
}
$this->session->set_userdata($userdata);
return true;
} else {
return false;
}
}
在控制器還採用了CI Session庫 – Naincy