【发布时间】:2014-06-15 10:43:15
【问题描述】:
我在 codegniter 的会话有问题,这对我来说似乎很奇怪!
当我从数据库登录时它可以工作,但是当我从 Facebook/twitter Api 登录时,它只出现在“sociallog”控制器上,我检查此社交帐户之前是否登录过!
我用
调试了我的代码echo "print all data at the session ".print_r($this->session->all_userdata())."\n";
在“sociallog”控制器上
Array
(
[session_id] => 36356242e5b0f3f0e25e6e0d5f5ca22c
[ip_address] => 127.0.0.1
[user_agent] => Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36
[last_activity] => 1402828004
[user_data] =>
[username] => mary
[id] => 2
[img] => images/profile/0a92617b105ccb08eabcde613eab9cde.jpg
[mail] => al@al.com
[criedt] => 0
[services_no] => 2
[job] => marketeer
[logged_in] => 1
)
但是当我重定向到家庭控制器时
echo "print all data at the session ".print_r($this->session->all_userdata())."\n";
输出是
Array
(
[session_id] => d0f0f2afab107dd75ecf056b79066bbe
[ip_address] => ::1
[user_agent] => Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36
[last_activity] => 1402828385
[user_data] =>
)
这意味着我丢失了在会话中加载的所有数据
我真的很疯狂!
chrome / firefox 和 /IE 也有同样的问题
当我直接从数据库登录时,它对我很好,我不知道问题是否在于控制器重定向到 fb api,然后返回我加载到会话的数据!
对此有任何建议!
【问题讨论】:
-
您是否尝试使用 sociallog 控制器而不是 CI_Controller 扩展家庭控制器?
-
@Cristian ,我收到错误“致命错误:第 3 行的 D:\xampp\htdocs\rungears.com\application\controllers\sociallog.php 中找不到类 'home'”我试图在同一个文件中创建嵌套类但同样的问题,非常感谢你试图帮助 cris,我会继续努力解决它!
-
你能发布你的控制器代码吗?
-
这是社交日志控制器 shar.es/P8aZe 和身份验证控制器 shar.es/P8aOv
-
我注意到您使用 session_start(),您不必使用它..您的框架会为您完成..
标签: php facebook codeigniter session