当我尝试使用CodeIgniter在MySQL中插入数据时,我收到此错误

时间:2013-06-29 05:55:25

标签: php codeigniter

遇到PHP错误:

  

严重性:注意

     

消息:未定义属性:My_sales :: $ db

     

文件名:core / Model.php

     

行号:51

     

致命错误:在非对象中调用成员函数insert()   第10行的/opt/lampp/htdocs/Learning_CI/application/models/sales.php

2 个答案:

答案 0 :(得分:1)

根据您的错误消息,您的数据库驱动程序似乎未加载。在尝试使用以下函数在模型中使用数据库类之前,请确保加载数据库类。

$this->load->database();

您可以在函数本身或模型构造函数中执行此操作。

function __construct()
{
    parent::__construct();
    $this->load->database();
}

或者,如果您想在整个网站上使用数据库,请将其添加到application/config/autoload.php,方法是将其添加到该文件的以下行:

$autoload['libraries'] = array('database' /* other auto-loaded libraries */);

答案 1 :(得分:0)

您应该加载数据库库以使用$ this-> db-> insert();

this->load->library('database');

您可以在应用中加载> config-> autoload->加载库。或者在特定模型的构造函数中,甚至在'$ this-> db'上方的一行中。