我有一个使用codeigniter的Web应用程序,用户大约200个。如果大约100个用户同时登录系统,有时用户会自动注销或重定向到登录页面而无需单击注销。
我的代码。
登录助手(加载 Construst 以检查登录与否)
function is_logged_in()
{
//Get Codeigniter Instance
$obj =& get_instance();
$is_logged_in = $obj->session->userdata('LOGGED_IN');
if(!isset($is_logged_in) || $is_logged_in != true)
{
$obj->session->set_flashdata('message','<div class="error_login"><b>ERROR:</b> Silahkan login terlebih dahulu.</div>');
//If no session, redirect to login page
redirect('login', 'refresh');
}
}
控制器。
public function verify()
{
$username = $this->input->post('username');
$password = $this->input->post('password');
//Query the database
$row = $this->Loginmodel->verify($username,$password);
if (count($row)) {
$dataSession = array(
'userid' => $row->userid,
'role' => $row->role,
'prov_cd' => $row->prov_cd,
'kab_cd' => $row->kab_cd,
'LOGGED_IN'=> true,
'MODAL'=> true
);
$this->session->set_userdata($dataSession);
redirect('dashboard','refresh');
}
else
{
$this->session->set_flashdata('message','<div class="error_login"><b>ERROR:</b> Username atau password salah.</div>');
redirect('login','refresh');
}
}
我认为这是因为我在会话数据中存储了许多参数。谢谢。