我在数据库中插入数据有问题;没有显示错误,但数据未插入数据库。
控制器代码
function FormData($data){
if (!empty($_POST['name'])) {
$data = array(
'name' => $this->input->post('name'),
'position' => $this->input->post('position'),
'about_me' => $this->input->post('about_me'),
'contact_me' => $this->input->post('contact_me'),
'email' => $this->input->post('email'),
'temp_addr' => $this->input->post('temp_addr'),
'perm_addr' => $this->input->post('perm_addr'),
'skill' => $this->input->post('skill'),
'photo' => $this->input->post('photo'),
);
$this->Maboutus->form_insert($data);
redirect('/admin');
}
}
型号代码
function form_insert($data){
$this->db->insert('aboutus',$data);
}
查看文件
<div class="container">
<div class="col-md-8">
<form action="#" method="POST" class="form-horizontal">
<div class="col-md-12">
<div class="form-group">
<lebel for="name" class="col-md-4" >Name :</lebel>
<input type="text" name="name" id="name" class="col-md-8" placeholder="your name " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Position :</lebel>
<input type="text" name="position" id="position" class="col-md-8" placeholder="your position " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >About Me :</lebel>
<input type="text" name="about_me" id="about_me" class="col-md-8" placeholder=" your name About me " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Mobile No :</lebel>
<input type="text" name="contact_me" id="contact_me" class="col-md-8" placeholder=" your Mobile number" required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Email :</lebel>
<input type="text" name="email" id="email" class="col-md-8" placeholder=" your email " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Temporary Addr :</lebel>
<input type="text" name="temp_addr" id="temp_addr" class="col-md-8" placeholder=" your Temporary Address " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Permanent Addr :</lebel>
<input type="text" name="perm_addr" id="perm_addr" class="col-md-8" placeholder=" your Permanent Address " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<lebel for="position" class="col-md-4" >Skill :</lebel>
<input type="text" name="skill" id="skill" class="col-md-8" class="col-md-8" placeholder="your skill " required>
</div>
</div>
<div class="clearfix"></div>
<div class="col-md-12">
<div class="form-group">
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" class="col-md-8" name="photo" id="photo">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input class="col-md-8" class="btn btn-primary" type="submit" value="Submit"></br></br>
</div>
</div>
</form>
</div>
我是PHP新手。数据不在数据库中插入,并且没有显示错误;我能做什么?我试图搜索,但我没有发现任何错误。
答案 0 :(得分:1)
您没有张贴到控制器/方法,因此帖子无处可去。在视图中更改行
<form action="#" method="POST" class="form-horizontal">
到这个
<form action="<?php echo base_url('controller_name/FormData'); ?>" method="POST" class="form-horizontal">
在控制器中将函数FormData
的定义更改为此
function FormData(){ ...
您不需要传递参数,因此不要求方法接收参数。
下一位与您的问题无关,但需要考虑改进。您无需构建要发送到模型的新阵列。由于$_POST
将填充您的字段,并且您的表列名称与表单的字段名称完全相同,因此您只需将$_POST
发送到模型即可。
$this->Maboutus->form_insert($_POST);
如果发布了您不希望发送到模型的数据,那么在执行插入之前,您将unset
这些索引。它应该在模型中完成,这样你就不会弄乱实际的$_POST
数组。例如:
function form_insert($data)
{
unset($data['not_to_be_inserted_key']); //remove this item from array
$this->db->insert('aboutus', $data);
}
但是在您给出的示例中不需要这样做。
答案 1 :(得分:0)
我假设您已成功接收控制器上的$ _POST,然后我可以看到的问题是模型,首先您需要初始化它,如果您还没有,您可以在__construct中执行以下操作< / p>
public function __construct() {
parent::__construct();
$this->load->model('Maboutus_model');
}
请注意,您需要在型号名称
之后添加“_model”并在调用该函数时使用
执行此操作$this->Maboutus_model->form_insert($data);