![](/img/trans.png)
[英]$this->session->set_userdata() not working in codeigniter
[英]Codeigniter $this->session->set_userdata() not working properly
我正在生成一个会话,但是当我生成一个会话时,调用$this->session->set_userdata('sessionName',$sessionArray)
函数后,我没有得到__ci_last_regenerate
。 当我在没有__ci_last_regenerate的情况下生成会话后进行重定向时,会话数据未显示在下一页上。我正在使用CI 3.1.4
$user_basic = array(
'user_id' => $user_id,
'email' => $this->input->post('email'),
'is_user_login' => 'true',
'language' => 'eng'
);
$this->session->set_userdata('user_basic',$user_basic);
echo'<pre>';print_r($this->session->userdata());
谢谢
如果您使用的是PHP> = 7.0,请检查您的codeignator版本 。
如果codeignator版本为3.0或小于3.0,则需要将codeignator更新为当前版本(例如codeignator当前版本3.1.7)
在config / autoload.php中自动加载会话。 $autoload['libraries'] = array('session');
首先,请确保已设置会话保存路径。 有些人像这样的例子
$config['sess_save_path'] = APPPATH . 'cache/sessions/';
$config['sess_regenerate_destroy'] = TRUE;
文件夹权限0700
然后尝试在控制器上设置会话,例如示例
$sessionArray = array(
'is_logged' => TRUE
);
$this->session->set_userdata($sessionArray);
// Remove the sessionName $this->session->set_userdata('sessionName',$sessionArray)
然后,您应该可以像
<?php echo $this->session->userdata('is_logged');?>
首先加载会话库:
$this->load->library('session')
像这样使用它:
$this->session->set_userdata($sessionArray)
但这完全取决于您的其余代码。 上载其余代码,以获得更好的解决方案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.