Codeigniter 使用mvc框架使用面向对象程序插入数据
我正在尝试将学生添加到数据库中,但这些学生尚未添加到数据库中 控制器的代码如下所示:Codeigniter 使用mvc框架使用面向对象程序插入数据,codeigniter,Codeigniter,我正在尝试将学生添加到数据库中,但这些学生尚未添加到数据库中 控制器的代码如下所示: public function add_student(){ $this->load->model('Stud_Model'); $data=array( 'roll_no'=>$this->input->post('roll_no'), 'name'=>$this->input->post('name'), 'role'=
public function add_student(){
$this->load->model('Stud_Model');
$data=array(
'roll_no'=>$this->input->post('roll_no'),
'name'=>$this->input->post('name'),
'role'=>$this->input->post('role'),
);
$this->Stud_Model->insert($data);
$query=$this->db->get("stud");
$data['records']=$query->result();
$this->load->view('Stud_view',$data);
}
public function insert($data){
$this->db->insert('stud',$data);
if($this->db->insert('stud',$data)){
return true;
}
}
<?php
echo form_open('Stud_controller/add_student');
echo form_label('Roll No.:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'roll_no'));
echo "<br/>";
echo form_label('name:');
echo form_input(array('id'=>'name','name'=>'name','role'=>'name'));
echo "<br/>";
echo form_label('Role:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'role'));
echo "<br/>";
echo form_submit(array('id'=>'submit','value'=>'Add'));
echo form_close();
?>
模型的代码如下所示:
public function add_student(){
$this->load->model('Stud_Model');
$data=array(
'roll_no'=>$this->input->post('roll_no'),
'name'=>$this->input->post('name'),
'role'=>$this->input->post('role'),
);
$this->Stud_Model->insert($data);
$query=$this->db->get("stud");
$data['records']=$query->result();
$this->load->view('Stud_view',$data);
}
public function insert($data){
$this->db->insert('stud',$data);
if($this->db->insert('stud',$data)){
return true;
}
}
<?php
echo form_open('Stud_controller/add_student');
echo form_label('Roll No.:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'roll_no'));
echo "<br/>";
echo form_label('name:');
echo form_input(array('id'=>'name','name'=>'name','role'=>'name'));
echo "<br/>";
echo form_label('Role:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'role'));
echo "<br/>";
echo form_submit(array('id'=>'submit','value'=>'Add'));
echo form_close();
?>
视图的代码如下所示:
public function add_student(){
$this->load->model('Stud_Model');
$data=array(
'roll_no'=>$this->input->post('roll_no'),
'name'=>$this->input->post('name'),
'role'=>$this->input->post('role'),
);
$this->Stud_Model->insert($data);
$query=$this->db->get("stud");
$data['records']=$query->result();
$this->load->view('Stud_view',$data);
}
public function insert($data){
$this->db->insert('stud',$data);
if($this->db->insert('stud',$data)){
return true;
}
}
<?php
echo form_open('Stud_controller/add_student');
echo form_label('Roll No.:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'roll_no'));
echo "<br/>";
echo form_label('name:');
echo form_input(array('id'=>'name','name'=>'name','role'=>'name'));
echo "<br/>";
echo form_label('Role:');
echo form_input(array('id'=>'roll_no','name'=>'roll_no','role'=>'role'));
echo "<br/>";
echo form_submit(array('id'=>'submit','value'=>'Add'));
echo form_close();
?>
1首先:在您的模型中,您要调用两次db insert。只留下一个。然后,如果出现问题,请检查插入的结果:…{return true;}否则{echo“Error in insert”,die;},最后,如果需要,添加$last_sql=$this->db->last_query();echo$sql;要了解您在db中到底在做什么,我做了,但仍然没有发生任何事情,甚至没有显示任何错误。插入数据后您会遇到什么错误?在您的模式中,尝试$data=array()
和公共函数insert($data=array()){
因此,如果您添加了$last\u sql=$this->db->last\u query();echo$last_sql;die;对于debbugging,您得到了什么?实际执行的最后一个查询是什么?