首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用添加按钮添加多个值

使用添加按钮添加多个值
EN

Stack Overflow用户
提问于 2019-09-27 20:15:58
回答 2查看 37关注 0票数 0

我有一个类似下面的表单,它可以动态地添加和删除字段。我想要实现的是插入表单中的所有数据,而不管它已经显示了多少行。

示例:在flight_name中-亚航

多名乘客想要添加到亚航控制器模块,视图就在那里

查看:

代码语言:javascript
复制
<input type="text" name="flight_name"/>
<table id="dynamic_field">
    <tr>
        <td><label for="">Name</label><input class="validate" id="inv_passname" name="inv_passname[]" type="text"></td>
        <td><label for="">Email</label><input class="validate" id="inv_passemail" name="inv_passemail[]" type="text"></td>
        <td><label for="">Mobile</label><input class="validate" id="inv_passmno" name="inv_passmno[]" type="text"></td>
        <td><label for="">DOB</label><input class="validate" id="inv_passdob" name="inv_passdob[]" type="date" placeholder="date"></td>
        <td><label for="">Passport No.</label><input class="validate" id="inv_passpasno" name="inv_passpasno[]" type="text"></td>
        <td><label for="">Expiry Date</label><input class="validate" id="inv_passpasexpno" name="inv_passpasexpno[]" type="date" placeholder="date"></td>
        <td><button type="button" id="add_box_passen" name="add_box_passen" class="btn-floating mb-1 waves-effect waves-light cyan add"><i class="material-icons">add</i></button></a></td>
    </tr>
</table>

控制器:

代码语言:javascript
复制
function flightsalesdata()
{
    if ($this->session->userdata(travelsec . 'Login_Id'))
    {
        $this->form_validation->set_rules('inv_passname', 'Username', 'trim');

        if ($this->form_validation->run() == false) {
            $result['status']  = 'error';
            $result['message'] = validation_errors();
        } else {
            $inv_id = $this->Sales_model->flightsalesdata($this->input->post("inv_passname"));
            if ($inv_id > 0) {
                $result['status']       = 'success';
                $result['message']      = "<script> swal({title: 'Added Successfully',icon: 'success'})</script>";
                $result['redirect_url'] = 'flight';
            } else
               $result['message'] = "<script> swal({title: 'Email Address Already Exists',icon: 'error'})</script>";
        }
        $this->output->set_content_type('application/json');
        $this->output->set_output(json_encode($result));
        $string = $this->output->get_output();
        echo $string;
        exit();
    }
else
        redirect('administrator');
}

型号:

代码语言:javascript
复制
function flightsalesdata($inv_passname)
{
    $data = array();
    foreach($ps5 as $key=>$value) {
        $data[]  = array(
            'inv_passname' => $value
        );
    }

    $query =$this->db->query("INSERT INTO `flight_passenger`(`inv_passname`) values('$inv_passname')");
    $this->db->insert_id(); 
}
EN

回答 2

Stack Overflow用户

发布于 2019-09-27 20:18:59

如下所示更改您的模型代码。希望它能起作用。模型

代码语言:javascript
复制
     function flightsalesdata($inv_passname)
            {

                 $data = array();
            foreach($ps5 as $key=>$value) {

$query =$this->db->query("INSERT INTO `flight_passenger`(`inv_passname`) values(".$value.")");
$this->db->insert_id();
            }

        }
票数 0
EN

Stack Overflow用户

发布于 2019-09-27 20:41:35

您可以对值进行Array,也可以使用insert_batch()函数插入数组,这样可以节省循环时间。

代码语言:javascript
复制
function flightsalesdata($inv_passname)
{

    $data = array();
    foreach($ps5 as $key=>$value) 
    {
        $data[]  = array(
                'inv_passname' => $value
            );
    }
       $query  = $this->db->insert_batch('flight_passenger',$data);

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58134378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档