php - 代码点火器中的数据库插入失败

标签 php mysql database codeigniter

我正在尝试将我的数组值发送到数据库。但是有数据库问题错误信息。消息显示 - “字段列表”中的未知列“数组”。我的代码有什么问题?

来自页面:

 <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/

相关文章:

mysql - Hibernate 标准总和

html - 数据库 ID 和 HTML ID 之间的链接

php - MySQL 更新函数插入新行

php - 从特定的 MySql 行获取值

php - 远程缓存自动完成问题

php - MariaDB 服务器版本,可在附近使用正确的语法

javascript - 将jquery dataTables(带有CRUD功能)连接到mysql

database - 检查该号码是否已在 Viber、WhatsApp 或 iMessage 中注册

php - 在 PHP PostgreSQL 中转义 SQL 查询

php - 如何结合php路由和seo