我是codeigniter模型的新手,我尝试按照文档中的步骤加载在我的数据库中注册的所有用户。
这是我的模特: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
致命错误:在第30行的G:\ xampp \ htdocs \ fiksi \ system \ application \ models \ user.php中的非对象上调用成员函数query()
第30行见上面的评论......
答案 0 :(得分:119)
您必须先加载数据库库。在autoload.php
添加:
$autoload['libraries'] = array('database');
另外,尝试重命名“User_model”的用户模型类。
答案 1 :(得分:1)
它解决了模型加载中的第二个参数:
$this->load->model('user','User');
第一个参数是模型的文件名,第二个参数定义了控制器中使用的模型名称:
function alluser()
{
$this->load->model('User');
$result = $this->User->showusers();
}
答案 2 :(得分:1)
function user() {
parent::Model();
}
=&GT;类名是User,构造名是User。
function User() {
parent::Model();
}