Php Codeigniter控制器模型调用失败
我是CI新手,我想更新mysql中的一些数据。这是我的控制器Php Codeigniter控制器模型调用失败,php,codeigniter,sql-update,Php,Codeigniter,Sql Update,我是CI新手,我想更新mysql中的一些数据。这是我的控制器 class Ci_update extends CI_Controller { function __construct() { parent::__construct(); } function index() { $data = array ( 'title' => 'Data Structure using C',
class Ci_update extends CI_Controller
{
function __construct() {
parent::__construct();
}
function index()
{
$data = array
(
'title' => 'Data Structure using C',
'text' => 'Data Structure Using C, for, IIIrd Sem VTU CSE students'
);
$id = 4 ;
$this->load->model('ci_update_model');
$this->ci_update_model($data,$id);
}
}
我的模型是:
class Ci_update_model extends CI_Model
{
function __construct() {
parent::__construct();
}
function updateData($data,$id)
{
$this->db->where('id',$id);
$this->db->update('data',$data);
}
}
但当我试图运行该程序时,它在第19行的C:\wamp\www\Ci\application\controllers\Ci\u update.php中显示了调用未定义的方法Ci\u update::Ci\u update\u model()
我在做什么?在控制器的构造函数中添加这一行
$this->load->model('Ci_update_model');
错误将得到解决使用如下
$this->load->model('ci_update_model');
$this->ci_update_model->updateData($data,$id);
若要在控制器代码中执行此操作,其余代码相同:
$this->load->model('ci_update_model');
$this->ci_update_model->updateData($data,$id);
加载模型后,必须调用其中的函数$this->ci\u update\u model->function($var)。。。不仅仅是$this->ci\u update\u model($var)…在您的例子中,您正在controller类中搜索函数ci\u update\u model。如果您在构造函数中加载该模型,则不需要在控制器文件的其余函数中加载该模型。因此,我建议您在构造函数中加载模型,以避免使用
$this->load->model('Ci_update_model')在你拥有的每一个函数中,问题不在于加载模型,而在于调用模型中的函数。。如果他只在一个控制器函数中需要它,为什么要为所有控制器函数加载它(在构造函数中)?在CI中,我们使用了两个其他函数以及索引函数。所问的问题只有一个错误,那就是模型调用的函数是错误的。@SahilJariwala我在CI中编码,我只在需要的地方加载模型。。您不需要在不使用模型的地方加载模型。。它只是需要更多的时间来处理。