当我在codeigniter中重定向页面时会话空

问题描述 投票:0回答:1

用户登录或注销时我的会话工作正常,它可以正常工作。但重定向链接时遇到问题。

这是我的配置设置:

$config['sess_cookie_name']     = 'ci_session';
$config['sess_expiration']      = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie']  = FALSE;
$config['sess_use_database']    = FALSE;
$config['sess_table_name']      = 'ci_sessions';
$config['sess_match_ip']        = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update']  = 300;

我只是在视图文件中创建仅处理click事件的Javascript代码。此单击事件的目的是当用户单击单选按钮时,它只需更改url简单的javascript代码,如下所示:

document.location = "http://www.mydomain.com/index.php/sets/";

问题:当这个url改变了我的会话时,user_data变量变为empty.i通过在sets控制器中使用以下代码进行检查:

class sets extends CI_Controller{
public function index(){
    $this->load->view('header');
    print_r($this->session->all_userdata());
   $this->load->view('footer');        
}

结果如下:

Array ( [session_id] => 421e7bec9096249af3f37142796005f2 [ip_address] => 00.115.429.81 [user_agent] => Mozilla/5.0 (Windows NT 6.1; rv:27.0) Gecko/20100101 Firefox/27.0 [last_activity] => 1395076388 [user_data] => )

呃现在我发现我的user_data是空的

php codeigniter session codeigniter-2 session-cookies
1个回答
0
投票

您是使用Chrome与开发人员工具还是Firefox与firebug?如果是这样,我也遇到了问题。它与更改用户/代理字符串以及与当前会话不匹配(由于开发人员工具)有关。如果您使用开发工具,可以尝试将$config['sess_match_useragent'] = TRUE;更改为$config['sess_match_useragent'] = FALSE;

我建议你在生产环境中改变它。

© www.soinside.com 2019 - 2024. All rights reserved.