繁体   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