CodeIgniter - 为什么我不能从另一个控制器中的控制器访问会话集?
CodeIgniter - Why can't I access a session set from a controller in another controller?
这是 Thisclass 控制器,我最初在其中设置了一个会话变量,其中 $data 是一个包含从数据库中获取的值的数组
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
/**
*
*/
class Thisclass extends CI_Controller
{
function __construct()
{
parent::__construct();
}
function index()
{
// The code for fetching values is here
$this->session->set_userdata("mysession",$data);
}
}//end class
?>
这是我试图访问该变量的另一个类控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
/**
*
*/
class Anotherclass extends CI_Controller
{
function __construct()
{
parent::__construct();
}
function index()
{
var_dump($this->session->userdata('mysession'));
}
}//end class
不过,那var_dumpreturns无效。我已经检查了会话库,它包含在 autoload.php 中。我一次又一次地检查索引,结果很顺利。那么,reason/s 为什么我不能调用那个变量可能是什么?在网络服务器中,它确实有效。会话变量可以在另一个控制器中访问,而在这个本地副本中,它似乎不起作用。我已经检查了必要的设置,看起来不错。谢谢你的帮助..
对于这种特定情况,此解决方案有效。
我在 xampp 的 php.ini 中将 session.auto_start=0 更改为 session.auto_start=1。
我在这里找到了答案:
我意识到这是关于网络服务器配置的问题。
这是 Thisclass 控制器,我最初在其中设置了一个会话变量,其中 $data 是一个包含从数据库中获取的值的数组
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
/**
*
*/
class Thisclass extends CI_Controller
{
function __construct()
{
parent::__construct();
}
function index()
{
// The code for fetching values is here
$this->session->set_userdata("mysession",$data);
}
}//end class
?>
这是我试图访问该变量的另一个类控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
/**
*
*/
class Anotherclass extends CI_Controller
{
function __construct()
{
parent::__construct();
}
function index()
{
var_dump($this->session->userdata('mysession'));
}
}//end class
不过,那var_dumpreturns无效。我已经检查了会话库,它包含在 autoload.php 中。我一次又一次地检查索引,结果很顺利。那么,reason/s 为什么我不能调用那个变量可能是什么?在网络服务器中,它确实有效。会话变量可以在另一个控制器中访问,而在这个本地副本中,它似乎不起作用。我已经检查了必要的设置,看起来不错。谢谢你的帮助..
对于这种特定情况,此解决方案有效。
我在 xampp 的 php.ini 中将 session.auto_start=0 更改为 session.auto_start=1。
我在这里找到了答案:
我意识到这是关于网络服务器配置的问题。