2014-08-30 101 views
0

當我將數據設置爲會話並打印會話數據時,我試圖將某些數據從一個函數傳遞給另一個函數,但我得到正確的數據,但是當試圖在另一個函數中使用數據時,我得到「Assets」知道這個詞從哪裏來。會話庫是自動加載的,請任何幫助。 這是我的代碼:如何使用會話在codeigniter中將數據從一個函數傳遞到另一個函數?

第一功能:

 $client_id = $this->uri->segment(3); 
     $sess_array = array(
        'cl_id' => $client_d, 
        'selected_client'=>TRUE, 
        ); 
    $this->session->set_userdata('selected_client',$sess_array); 

二級功能:

$client_sess = $this->session->userdata('selected_client'); 
    $client_id= $client_sess['cl_id']; 
+0

你有沒有檢查你從這得到什麼? $ client_id = $ this-> uri-> segment(3); – Naincy 2014-08-30 19:08:23

+0

哪裏來'$ client_d'從?? – 2014-08-30 23:02:37

+0

你可以從第一個函數調用第二個函數,然後傳遞數據嗎? – Will 2014-08-30 23:58:44

回答

0

試試這個,我認爲這會給你一些想法。

function one(){ 
    $client_id = $this->uri->segment(3); 
     $sess_array = array(
        'cl_id' => $client_d, 
        'selected_client'=>TRUE, 
        ); 
    $this->two($sess_array); 

} 
function two($id){ 
    $client_id= $id; 
} 
0

這裏是示範的樣子:

function getResponse($gettingresponse) 

{ 

$enrollresponse=$gettingresponse['sendresponse']; 

return $enrollresponse; 

} 

的控制器如下:

public function Register() 

{ 

   $this->load->view('firstview'); 

   $this->load->view('secondview'); 

   if($_POST) { 

       $gettingresponse=array(

           'sendresponse'=>$_POST['source'], 

           'receiverresponse'=>$_POST['destination'] 

       ); 

       $registration_confirm=$this->systemModel->responselogin($gettingresponse); 

       $resposeflag=$this->systemModel->getEmail($gettingresponse); 

       $data['resposeflag']=$gettingresponsevalue; 

       if($registration_confirm){ 

           $this->token($data); 

       } 

   } 

   $this->load->view('thirdview'); 

} 

public function token($data=array()) 

{ 

   $this->load->view('firstview'); 

   $data['resposeflag']; 

   $this->load->view('token',$data); 

   $this->load->view('thirdview'); 

} 

下面的視圖顯示了已的職能部門之間傳遞的數據控制器。

<?php 
echo form_input(array('name'=>'source','readonly'=>'true','value'=>$resposeflag)); 
?> 
相關問題