Возможный дубликат:
Ошибка: получить свойство не объекта
Я новичок в модели codeigniter, я пытаюсь выполнить шаги в документах, чтобы загрузить всех пользователей, зарегистрированных в моем db.
Это моя модель: 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(); } }
Это мой контроллер: 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 />"; } } } }
он показывает ошибку:
A PHP Error was encountered Severity: Notice Message: Undefined property: User::$db Filename: models/user.php Line Number: 30
Неустранимая ошибка: вызов функции-функции-члена () для не-объекта в
G: \ xampp \ htdocs \ fiksi \ system \ application \ models \ user.php в строке 30
Линия 30 см. Комментарий выше …
Сначала вам нужно загрузить библиотеку db. В
autoload.php:
$autoload['libraries'] = array('database');
Кроме того, попробуйте переименовать класс модели пользователя для «User_model».
Он разрешил второй параметр в нагрузке модели:
$this->load->model('user','User');
первый параметр – это имя файла модели, а во-вторых, определение имени модели, которое будет использоваться в контроллере:
function alluser() { $this->load->model('User'); $result = $this->User->showusers(); }
function user() { parent::Model(); }
=> имя класса – User, имя конструкции – User.
function User() { parent::Model(); }