Codeigniter:如何在codeigniter中调用单个控制器函数中的多个模型函数

时间:2014-12-29 04:44:30

标签: php mysql codeigniter

我是coidigniter的新手。

如果我从控制器功能调用单模型方法,那么它的工作正常。

如果我尝试从单个模型调用多个模型函数,通过单个控制器函数,那么我得到

  

胎儿错误:在布尔

上调用成员函数result()

我的代码看起来像这样

controller.php

public function get_details(){

   $this->my_model->get_company();  //first call

   $this->my_model->get_employee();  //second call

}

my_model.php

public function get_company(){

 $qry="CALL get_company_details";

 $result=$this->db->query($qry);

 foreach($result->result() as $row){

   $data[]=$row;

 }

return $data;

}


public function get_employee(){

 $qry="CALL get_employee_details";

 $result=$this->db->query($qry);

 foreach($result->result() as $row){

   $data[]=$row;

 }

return $data; 

} 

我能这样打电话吗? 请帮帮我......

3 个答案:

答案 0 :(得分:0)

简单的拼写错误:

更改

function get_company(){

function get_employee(){

您已经两次定义了相同的功能。

答案 1 :(得分:0)

确保application / config / database.php

中的数据库连接正常
$data = array();

    $qry="SELECT * FROM . . . . ."; // your query 

    $result=$this->db->query($qry);
    if($result->num_rows() > 0){
     foreach($result->result() as $row){

       $data[]=$row;

     }
    }


    return $data; 

答案 2 :(得分:0)

替换

$result=$this->db->query($qry);
 foreach($result->result() as $row){
   $data[]=$row;
 }
return $data;

return $result->result_array();

那应该可以解决你的问题。您可以查看CodeIgniter文档的result_array()部分。