2015-09-26 32 views
0

從一個函數(search_results)中使用post獲取一個名爲$ msisdn的變量。這樣的處理後,我想用相同的變量在另一個函數(assign_role)目前,我不能這樣做,因爲我得到這個錯誤Codeigniter:在控制器中將一個函數的post變量傳遞給另一個函數

嚴重性:通知消息:未定義的變量:MSISDN

。下面是我search_result函數,其中我獲得這個職位數據:

public function search_results(){ 

    $msisdn = $this->input->post('search_data');//getting data from the view 


    if ($msisdn == false){ 

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

    } else{ 
     $this->assign_role($msisdn); //passing the variable to another function 

     $this->load->model('search_model'); 


     $data['result'] = $this->search_model->search_user($msisdn); 
     $data1['box'] = $this->search_model->search_select($msisdn); 

     $result = array_merge($data, $data1); 

     $this->load->view('add_publisher',$result); 

     echo json_encode($result); 
    } 

} 

我想在下面這個函數中使用$ MSISDN從上面的函數:

public function assign_role($msisdn){ 

    //echo $msisdn['numm']; 

    $publisher = $this->input->post('select'); 

    if ($publisher == false) { 

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

    } else { 

     $data = array(
      'publisher' => true, 
     ); 

     $this->load->model('insert_model'); 

     $data1 = $this->insert_model->search_group($msisdn, $data);    

      if ($data1 == true) { 

       echo "Recorded updated succesfully"; 
       $this->load->view('add_publisher'); 

      } else { 

       echo "Recorded not updated"; 
       $this->load->view('add_publisher'); 

      } 

    } 

} 

請幫我實現這一目標。

+1

「目前,我無法做到這一點,因爲它是打破了整個應用程序」這是沒有足夠的信息,我們協助你。請修改您的問題以包含您收到的實際錯誤消息。 –

+0

@IanKemp我編輯了這個問題。 – JobSam

+0

哪行代碼引發錯誤? – Stenerson

回答

1

通過使用會話可以實現在同一控制器中將變量從一個功能傳遞到另一個功能。在笨,可以使用flashdata像:

$this->session->set_flashdata('info', $MyVariable); 

記住,flashdata僅適用於下一個服務器請求,然後它會被自動清除。 然後,它可以被檢索爲:

$var = $this->session->flashdata('info'); 

如果你想保持變量多了一個服務器的請求,你可以這樣做:

$this->session->keep_flashdata('info'); 

希望這會幫助別人面臨的問題。

相關問題