2017-08-01 86 views
1

我试图从一个NONE codeigniter站点捕获退出会话,该站点有一个名为$_SESSION['username']的变量,现在当当前用户从该站点登录并尝试访问codeigniter站点时,控制器将只是将目前的$_SESSION转移到set_userdata,到目前为止是我的代码,但如果它被成功捕获,我没有运气尝试print_r,任何帮助都会很棒!我正在使用$this->session->set_userdata

<?php 

    class Pages extends CI_Controller{ 

     public function view($page = 'home'){ 



       if(!file_exists(APPPATH.'views/pages/'.$page.'.php')){ 
         show_404(); 
       } 

     $this->session->set_userdata('CI_Username',$_SESSION['username']);   
     $data['user'] = $this->session->userdata('CI_Username'); 


       $data['title'] = ucfirst($page); 

       $this->load->view('templates/header'); 
       $this->load->view('templates/nav'); 
       $this->load->view('pages/'.$page, $data); 
       $this->load->view('templates/footer'); 

       print_r($data); 

     } 

} 
+0

是你属于你的网站在同一台服务器中提到的其他网站? – smzapp

+0

是的,但我无法获得$ _SESSION ['用户名']的值 – KaoriYui

+0

您是否尝试过'print_r($ _ SESSION);'或'print_r($ this-> session-> userdata)'而不是'print_r($数据)'?检查会话中是否有值。 – smzapp

回答

1

如果你想获得会话的数据,你应该试试这个:

$data['user'] = $this->session->userdata('CI_Username'); 

因为

$this->session->set_userdata(...); 

用于值分配给您的会话。

这里是链接:Link

+0

不幸的是仍然无法获得$ _SESSION ['用户名']我会更新我的问题代码,如果你看到任何错误。 – KaoriYui

+0

你可以在编辑时向我显示你的会话价值吗?请 –

+0

是的,我尝试过,但我的目标是获取从另一个网站声明的现有的$ _SESSION ['用户名'],但它没有传递给我的控制器,这可能吗? – KaoriYui

0

当设置会话

$sessionoptions = array('username', 'John'); 

$this->session->set_userdata($sessionoptions); 

https://www.codeigniter.com/user_guide/libraries/sessions.html#adding-session-data

确保您所设置的会话保存路径正确的config.php文件。

$config['sess_driver'] = 'files'; 
$config['sess_cookie_name'] = 'ci_session'; 
$config['sess_expiration'] = 7200; 
$config['sess_save_path'] = APPPATH . 'cache/sessions/'; 
$config['sess_match_ip'] = TRUE; 
$config['sess_time_to_update'] = 300; 
$config['sess_regenerate_destroy'] = TRUE; 

设置会议文件夹的权限0700

然后

$data['user'] = $this->session->userdata('username'); 
+0

是的会话正确配置,我试图从前一个none codeigniter网站声明$ _SESSION ['用户名'],但无法让它显示在我的控制器上。 – KaoriYui

+0

不要以为你可以。 – user4419336