2010-08-09 125 views
33

Possible Duplicate:
Error : get property of non-objectCodeIgniter error del modelo: Undefined property

Soy nuevo modelo de CodeIgniter, trato de seguir los pasos de documentos para cargar todo usuario registrado en mi db.

Esta es mi modelo: 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(); 
    } 
} 

Ésta es mi controlador: 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 />"; 
     } 
     } 
    } 
} 

que muestra el 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

Línea 30 Véase el comentario. .

Respuesta

107

Primero debe cargar la biblioteca db. En

autoload.php:

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

Además, trate de cambiar el nombre de la clase del modelo de usuario "User_model".

+0

Muchas gracias – xsami

+0

estoy recibiendo este error, gravedad: Note Mensaje: El uso de ‘base de datos’ indefinido constante - asumido '‘base de datos’' Nombre del archivo: config/autoload.php – Anuj

1

que resuelve throung segundo parámetro en la carga del modelo:

$this->load->model('user','User'); 

primer parámetro es el nombre de archivo del modelo, y segundo que define el nombre del modelo a utilizar en el controlador:

function alluser() 
{ 
$this->load->model('User'); 
$result = $this->User->showusers(); 
} 
1
function user() { 

     parent::Model(); 

} 

=> nombre de clase es Usuario, nombre de construcción es Usuario.

function User() { 

     parent::Model(); 

} 
Cuestiones relacionadas