我正在尝试将我的数组值发送到数据库。但是有数据库问题错误信息。消息显示 - “字段列表”中的未知列“数组”。我的代码有什么问题?
来自页面:
<form action="<?php echo base_url()?>Welcome/form_data" method="post">
<?php
$x=01;
for ($i = 0; $i <= 7; $i++) {
?>
<label><?php echo $x++ ?>.</label>
<input type="text" value="<?php echo('L1' . rand(0, 10000000000) . 'MLM' . rand() . '00'); ?>" readonly="" name="screct_pin[]">
<input type="number" value="13<?php echo $x++ ?>5" name="user_id[]">
<br>
<?php }?>
<br>
<input type="submit">
Controller
public function form_data(){
$this->WelcomeModel->form_data_info();
redirect('Welcome');
}
型号:
public function form_data_info() {
$data = array();
$data['screct_pin'] = $this->input->post('screct_pin');
$data['user_id'] = $this->input->post('user_id');
$this->db->insert('tbl_pin',$data);
}
最佳答案
此处您在值中插入数组,因此 PHP 无法将数组存储在列中。 所以在这里你需要遍历循环中的每个值并在数据库中插入值,如下所示..
<?php
public function form_data_info()
{
$screct_pin_array = $this->input->post('screct_pin');
$user_id_array = $this->input->post('user_id');
for($i = 0; $i<= count($screct_pin_array); $i++)
{
$data = array();
$data['screct_pin'] = $screct_pin_array[$i];
$data['user_id'] = $user_id_array[$i];
$this->db->insert('tbl_pin',$data);
}
}
?>
关于php - 代码点火器中的数据库插入失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39975769/