2017-08-01 4 views
1

NONE codeigniterサイトから現在のセッションをキャプチャしようとしていますが、そのサイトには$_SESSION['username']という変数があります。現在のユーザーがそのサイトからログオンし、現在の$_SESSIONset_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 ['username']の値を取得できません – KaoriYui

+0

'print_r($ _ SESSION);の代わりに' print_r($ _ SESSION); 'または' print_r($ this-> session-> userdata)データ) '?セッションに値があるかどうかを確認します。 – smzapp

答えて

1

、あなたはこれを試してみてください:あなたのセッションに値を割り当てるために使用される

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

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

ので。ここで

リンクされていますLink

+0

残念ながら、まだ$ _SESSION ['username']を取得できません。間違っていると思われる場合は、私の質問コードを更新します。 – KaoriYui

+0

編集時にセッション値を表示できますか? Please –

+0

はい、私の目標は、既存の$ _SESSION ['username']が別のサイトから宣言されていますが、それがコントローラに渡されないということです。これは可能ですか? – 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

はいセッションは正しく設定されています。以前のcodeigniterサイトから宣言された$ _SESSION ['username']を取得しようとしていますが、コントローラに表示することができません。 – KaoriYui

+0

できないと思います。 – user4419336

関連する問題