我不知道为什么,但我在页面之间丢失了CodeIgniter会话数据。会话ID正在改变。什么可能导致这个?一旦设置好,它是不是可以从任何页面访问?
会话数据在配置页面中设置:
<?php $config = array(
'power' => $_COOKIE['power'],
'oemclass4' => $_COOKIE['class'],
'cooling' => $_COOKIE['cooling'],
'beam' => $_COOKIE['beam'],
'wavelength' => $_COOKIE['wavelength'],
'model_no' => $_COOKIE['part']);
$this->session->set_userdata('config', $config);
?>
然后,用户将被重定向到包含其配置详细信息的页面。会话userdata仍在那里。然后他们将Javascript重定向(window.location)到登录页面,然后用户数据消失了。
答案 0 :(得分:2)
在本地主持人工作时确实如此。将cookie_domain指定为localhost。这将保留页面重定向上的所有会话数据。
答案 1 :(得分:1)
我在使用localhost时已经在cookie域中使用了127.0.0.1。但是,当我将cookie_domain更改为“localhost”时,会话开始工作。我打算切换到Native会话,但改为“localhost”工作&amp;我已经在localhost上移动了CI会话。
答案 2 :(得分:0)
我有一个类似的问题。请确保例如,如果base_url为
设置为说,dynamic.dns.com,你在localhost输入127.0.0.1上测试它
或者localhost,这些都是浏览器的不同域,这可能会导致
这个问题。
希望有所帮助:)
答案 3 :(得分:0)
因为配置cookie,我的session_id一次又一次地改变。
$config['cookie_prefix'] = '';
$config['cookie_domain'] = '';
$config['cookie_path'] = '/';
但我一直都是个问题...我的BDD是用本地会话php更新的,但我在user_data中的vars已被销毁&gt;&lt; user_data也。