嗨朋友我正在使用编码器默认会话库。我使用此库为我的Web应用程序创建了正常登录和facebook登录。
正常登录与此库正常工作,当我尝试使用fb登录执行相同操作时,我只能在登录页面中看到会话变量。当我去网站的不同页面时,会话变量不可见。
FB登录: - print_r($ this-> session-> all_userdata());登录页面给我以下数组
数组([session_id] => 18d8f5e5f8504289d848a137e6d8587b [ip_address] => *** [user_agent] => Mozilla / 5.0(X11; Ubuntu; Linux x86_64; rv:35.0)Gecko / 20100101 Firefox / 35.0 [last_activity] => 1425530911 [user_data] => [user_id] => 2262 [user_email] => **** [logged_in] => 1 [facebook_login] => 1 [admin] => [logout] => https://www.facebook.com/logout.php?next= *****&安培; =的access_token CAANoqwioFoQBACkl2krguKonH3nDamlowXcZCxhqhZAMa1ncOgazFdGXmkSB1QjnpZCweDa1MrXcWK1ZAgUUDHh7Xi7OEJSoJKvt8VXpWYeb3qfcz0mYXmzcLJqZCTFh4PheYD84zGq5u7Q1YQLINS1I7t6KU4EwlGxVMsZBKYjgFAt8tZA5CqSYQ168kvC329TqPZBF2ZAS8j6HfVFcHWsvO )
其他页面的数组为空
请帮我解决此问题。
这是我用于fb登录的模型
if($query->num_rows()>0)
> {
> foreach($query->result() as $rows)
> {
>
> //add all data to session
> $newdata = array(
> 'user_id' => $rows->id,
> 'user_email' => $rows->email,
> 'logged_in' => TRUE,
> 'facebook_login' => TRUE,
> 'admin'=>False,
> 'logout' => $logout
> );
> }
>
>
> $this->session->set_userdata($newdata);
>
> $message = $this->session->all_userdata();
>
> return true;
> }
答案 0 :(得分:0)
如果您使用的是CI 3,则all_userdata()处于DEPRECATED状态,您可以使用不带参数的userdata()。
如果问题仍然存在或您未使用CI 3,则可以使用Native Session库,因为CI原始会话库存在一些问题。