Codeigniter从模型获得结果

时间:2013-04-25 15:25:35

标签: database codeigniter model

我有一个名为main的控制器...... 我有这个代码。

$data['companies'] = $this->companies->getAllCompanies();
$this->load->view('main_view',$data);

我已经在构造函数中加载了名为companies的模型,如下所示:

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

这是我的模特:

class Companies extends CI_Model{    
 function getAllCompanies()
 {
       $this -> db -> select('*');
       //$this -> db -> from('companies');

       $query = $this -> db -> get('companies');

       if($query -> num_rows() > 0)
       {
         return $query->result();
       }
       else
       {
         return false;
       }
 }}

我收到此错误:

( ! ) Fatal error: Call to a member function execute() on a non-object in C:\wamp\www\awt\system\database\drivers\pdo\pdo_driver.php on line 193
Call Stack

5   0.0299  4303144 Companies->getAllCompanies( )   ..\main.php:32

这段代码有什么不对,请帮助我!

2 个答案:

答案 0 :(得分:0)

听起来你有某种sql错误。尝试启用db_debug中的application/config/database.php标记并检查表名等。您可以尝试在错误位置处打印生成的sql查询(在system / database / drivers / pdo / pdo_driver.php:191下)。

答案 1 :(得分:0)

class Companies extends CI_Model{    
 function getAllCompanies()
 {
       $this -> db -> select('*');
       //$this -> db -> from('companies');

       $result = $this -> db -> get('companies');

       if($query -> num_rows() > 0)
       {
         return $result;
       }
       else
       {
         return false;
       }
 }}

进行上述更改。