>我使用CI3x创建了一个新项目并在HMVC中转换了相同的项目现在我已经创建了一个辅助文件并自动加载了相同的文件。此外,数据库库也是自动加载的。
有一个函数,我试图在数据库中插入一些值,但显示数据库错误 有关详细信息,请查看下面的代码和错误
**helper code**
if (!function_exists('create_meta')) {
function create_meta($data = array()) {
$CI = &get_instance(); //$CI = & get_instance();
$CI->load->database();
if (is_array($data) && !empty($data) && array_key_exists('page_url', $data)) {
$CI->db->insert("table_name", $data);
}
}
}
**Error 1**
A PHP Error was encountered
Severity: Notice
Message: Trying to get property 'load' of non-object
Filename: helpers/Utils_helper.php
Line Number: 518
Backtrace:
File: E:wamp64wwwddaappshelpersUtils_helper.php
Line: 518
Function: _error_handler
File: E:wamp64wwwddaappsmodulesadmincontrollersCategory.php
Line: 161
Function: create_meta
File: E:wamp64wwwddaindex.php
Line: 320
Function: require_once
**Error 2**
Type: Error
Message: Call to a member function database() on null
Filename: E:wamp64wwwddaappshelpersUtils_helper.php
Line Number: 518
Backtrace:
File: E:wamp64wwwddaappsmodulesadmincontrollersCategory.php
Line: 161
Function: create_meta
File: E:wamp64wwwddaindex.php
Line: 320
Function: require_once
请调查并让我知道你们中是否有人遇到并解决了同类问题。
提前致谢
从函数中删除$CI->load->database();
行,如果您 已经在application/config/autoload.php
中加载了数据库库。
如果您没有自动加载数据库,请在函数中修改此行:
$CI->load->database();
自:
$CI->load->library('database');
如果您不知道如何自动加载数据库库。打开应用程序/配置/自动加载.php文件,$autoload['libraries']
并像这样添加您的库:
$autoload['libraries'] = array('database');