![](/img/trans.png)
[英]CodeIgniter - Session not working when redirecting to other Controller
[英]Codeigniter session not working in other functions
嗨,我有这种新型问题,是我的代码点火器会话无法在控制器的其他功能中工作
例如我的login3函数
\\Data is coming from here fine
foreach($query as $row)
{
$name = $row->name;
$id = $row->id;
$dmail = $row->email;
}
if(isset($dmail))
{
$arr = array();
$arr['name'] = $name;
$arr['id'] = $id;
$arr['email'] = $email;
$this->session->set_userdata("facebooker",$arr);
$this->load->model('Gift');
$this->load->library('session');
$der = $this->session->userdata("facebooker");
$arrr = array();
$arrr['unamer'] = $der['name'];
$arrr['ids'] = $der['id'];
$arrr['email'] = $der['email'];
//After loading the views all data shows fine
$this->load->view("gifttoday/header",$arrr);
$this->load->view("gifttoday/welcome",$arrr);
}
但是当我在此函数中但在同一控制器中调用相同的会话时,它没有显示数据
function profileselect()
{
$this->load->model('Gift');
$var =array();
$this->load->library('session');
// Here i call this session but no data
$mer = $this->session->userdata("facebooker");
// When i print all the values of $mer it shows empty array
var_dump($mer);
/**
$this->load->view("gifttoday/header",$arrr);
$this->load->view("gifttoday/profilev",$arrr);
**/
}
我已经搜索了这个问题,而我的员工在codeignitor会话中也遇到了这个问题,但是对我来说没有可用的修复程序可以帮助任何人解决这个问题。
更好的方法是在构造函数中加载会话库
public function __construct()
{
$this->load->library('session');
}
或者在config.php
启用会话库
在设置可能会覆盖会话数据的会话数据之后,您正在调用该库(如果您已经首先加载了会话库):
所以这:
$this->session->set_userdata("facebooker",$arr);
$this->load->model('Gift');
$this->load->library('session');
应该是这样的:
$this->load->library('session');
$this->session->set_userdata("facebooker",$arr);
$this->load->model('Gift');
但是,如果您打算在应用程序中的多个位置使用会话库,则最好是自动加载会话库...
在文件application / config / autoload.php中编辑此行
$autoload['libraries'] = array('session',...);
然后避免在需要时手动加载它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.