codeigniter model error: Undefined property

Vina picture Vina · Aug 9, 2010 · Viewed 169.1k times · Source

Possible Duplicate:
Error : get property of non-object

I am new to codeigniter model, i try to follow steps in docs to load all user registered in my db.

This is my model: user.php

class User extends Model {
     function user() {
         parent::Model();
     }
     function alluser() {
         $query = $this->db->query("select * from user limit 0,5"); //Line 30 error as in my IDE located in this line
         return $query->result();
     }
}

This is my controller: home.php

class home extends Controller {

function index() {

    parent::Controller();

}
function alluser() {
    $this->load->model('User');
    $result = $this->User->showusers();
    if ($result->num_rows()>0) {
        foreach ($result as $row) {
            echo "ID:".$row->userid." ".$row->userpenname."<br />";
            echo $row->userfirstname." ".$row->userlastname."<br />";
        }
      }
   }
}

it showing error:

A PHP Error was encountered

Severity: Notice

Message: Undefined property: User::$db

Filename: models/user.php

Line Number: 30

Fatal error: Call to a member function query() on a non-object in
G:\xampp\htdocs\fiksi\system\application\models\user.php on line 30

Line 30 see comment above...

Answer

Nacho picture Nacho · Aug 9, 2010

You have to load the db library first. In autoload.php add :

$autoload['libraries'] = array('database');

Also, try renaming User model class for "User_model".