簡體   English   中英

如何通過功能通過CodeIgniter將數據從控制器發送到模型

[英]How to send data from controller to model with CodeIgniter through functions

我想將數據從Controller傳遞到模型,但是我無法在CI的模型端獲取它。請幫我。

這是我的控制器功能:

function show_chronicles($chronicle_num) {
    $this->load->database();

    //load the model  
    $this->load->model('Chronicles_model');
    //load the method of model  

    $data['h'] = $this->Chronicles_model->show_seminar();
    //return the data in view  
    $this->load->view('chronicles', $chronicle_num);
}

這是我的模型

public function show_seminar($chronicle_num) {
    echo $chronicle_num;
    //$this->db->select('*');
    //$this->db->where('chronicles_no',$chronicle_num);
    //$query1 = $this->db->get('chronicles');  
    //return $query1;  
}

這是因為您沒有將任何值傳遞給模型。

CONTROLLER

function show_chronicles($chronicle_num)
{
    $this->load->database();

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

    $data['h']=$this->Chronicles_model->show_seminar($chronicle_num);  
    $this->load->view('chronicles', $chronicle_num);

}

並且您需要返回查詢的result()

模型

public function show_seminar($chronicle_num = NULL)
      {  
         return $this->db
                     ->get_where('chronicles', array('chronicles_no' => $chronicle_num))
                     ->result();  
      } 

控制器

function show_chronicles($chronicle_num) {
    $this->load->database();

    //load the model  
    $this->load->model('Chronicles_model');
    //load the method of model  

    // pass it to model
    $data['chronicle_num'] = $this->Chronicles_model->show_seminar($chronicle_num);
    //return the data in view  
    $this->load->view('chronicles', $data);
}

這是我的模型

public function show_seminar($chronicle_num) {
    return $chronicle_num;
    //$this->db->select('*');
    //$this->db->where('chronicles_no',$chronicle_num);
    //$query1 = $this->db->get('chronicles');  
    //return $query1;  
}

您只是在調用$this->Chronicles_model->show_seminar();時忘了傳遞$chronicle_num作為參數$this->Chronicles_model->show_seminar();

所以正確的方法是$this->Chronicles_model->show_seminar($chronicle_num);

您可以向功能添加任意數量的參數。 例:

public function show_seminar($chronicle_num, $param2, $param3) {
    //Login here
}

只要記住每次調用該函數時都要傳遞參數即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM