Php 交叉控制器时Codeigniter丢失会话
我在我的网站上创建了一个Facebook登录,然后当我得到一个登录用户的数据时,我创建了一个数组会话,将用户的信息存储在我的控制器中 当我转到另一页时,我的会话有问题,我的会话丢失了,我不知道这会发生什么 我这样设置会话:Php 交叉控制器时Codeigniter丢失会话,php,codeigniter,Php,Codeigniter,我在我的网站上创建了一个Facebook登录,然后当我得到一个登录用户的数据时,我创建了一个数组会话,将用户的信息存储在我的控制器中 当我转到另一页时,我的会话有问题,我的会话丢失了,我不知道这会发生什么 我这样设置会话:$this->session->set\u userdata('fb\u user\u info',$user\u info) 但是,我自己的帐户登录,我做同样的方式,它在所有页面上工作 我的问题是,为什么会丢失会话 这是我在获取用户信息时设置会话的代码 <?php if
$this->session->set\u userdata('fb\u user\u info',$user\u info)代码>
但是,我自己的帐户登录,我做同样的方式,它在所有页面上工作
我的问题是,为什么会丢失会话
这是我在获取用户信息时设置会话的代码
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Account extends CI_Controller {
public function __construct()
{
parent::__construct();
//$this->authenticate();
// Facebook constructor code
$CI = & get_instance();
$CI->config->load("facebook",TRUE);
$config = $CI->config->item('facebook');
$this->load->library('facebook', $config);
public function index()
{
$user = $this->facebook->getUser();
if($user) {
try {
$user_info = $this->facebook->api('/me');
// Set session
$this->session->set_userdata('FB_SESSION_INFO', $user_info);
$args = $logout_url;
$data['getLogoutUrl'] = $this->facebook->getLogoutUrl($args);
} catch(FacebookApiException $e) {
echo '<pre>'.htmlspecialchars(print_r($e, true)).'</pre>';
$user = null;
}
} else {
$param = array('scope' => 'email','redirect_uri' => $mycurrent_url);
$data['getURLLogin'] = "<a href=\"".$this->facebook->getLoginUrl($param)."\">Login with facebook</a>";
}
}
是否正在构造函数中加载会话库$此->加载->库(“会话”);如果您的会话在另一个控件中丢失,则表示该会话在该控件中不可用。。。在主controlelr的构造函数中初始化会话,使其在每个controllerI中都可见。i加载到config文件夹alread的autoload.php中!只要尝试回显丢失的控制器中的会话数据,并查看resultlost会话(当控制器文件不同时)。