我有一个具有前端和后端部分的网站。 问题是,当我从前端部分登录并打开管理仪表板时,我会自动登录,我不希望管理员登录,除非他输入用户名和密码。
我正在使用 session 。
我该如何解决这个问题..?我正在使用 codeigniter
最佳答案
如果没有看到你的代码,这有点困难,但这是我如何做前端和后端
配置.php
$_SERVER['REQUEST_URI_PATH'] = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$segments = explode('/', $_SERVER['REQUEST_URI_PATH']);
$config['sess_driver'] = 'files';
if ($segments[2] == 'admin') {
$config['sess_cookie_name'] = 'admin_sessions';
$config['sess_expiration'] = 1440;
$config['sess_save_path'] = FCPATH . 'application/cache/session/admin/';
} else {
$config['sess_cookie_name'] = 'catalog_sessions';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = FCPATH . 'application/cache/session/catalog/';
}
$config['sess_match_ip'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = TRUE;
另一种设置方式
$data = array(
'is_logged' => true,
'user_id' => somenumber
);
$this->session->set_userdata('backend', $data);
$data1 = array(
'is_logged' => true,
'customer_id' => somenumber
);
$this->session->set_userdata('frontend', $data1);
访问
$admin_session_data = $this->session->userdata('backend');
echo $admin_session_data['user_id'];
$frontend_session_data = $this->session->userdata('frontend');
echo $frontend_session_data['customer_id'];
关于php - 前端和后端登录的 session 冲突 - codeigniter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39361661/