输入数组代码点火器

Input array codeigniter

我有这样的动态形式

我正在创建一个动态表单,我有一个添加按钮,当我单击它时会向表单添加一行。

但是当我回显时,为什么会这样?

这是我的代码

 public function inputData(){
        $provinsi = $this->input->post('provinsi');
        $res = array();
        for ($i=0; $i < count($provinsi); $i++) { 
            $res[] = array(
                'id_finance' => '1',
                'provinsi'   => $provinsi[$i],
            );
         $this->db->insert_batch('lokasi', $res);
         echo "<pre>", print_r($res);
        }
    }

这个输出

Array
(
    [0] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 1
        )
)
1
Array
(
    [0] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 1
        )
    [1] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 2
        )
)
1

Array
(
    [0] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 1
        )
    [1] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 2
        )
    [2] => Array
        (
            [id_finance] => 1
            [provinsi] => TES 3
        )
)
1

我想要这样的输出,怎么办?

 Array
    (
        [0] => Array
            (
                [id_finance] => 1
                [provinsi] => TES 1
            )
        [1] => Array
            (
                [id_finance] => 1
                [provinsi] => TES 2
            )
        [2] => Array
            (
                [id_finance] => 1
                [provinsi] => TES 3
            )
    )

这是我的表格

 <form method="post" action="<?php echo base_url() . 'testing/inputData'; ?>">
          <div>
               <input type="text" name="provinsi[]"class="form-control name_list"/>
               <button type="button" name="add">Add More</button>
          </div>                       
          <button type="submit" class="btn btn-info">submit</button>
 </form>

添加一行我使用 jquery 帮助。

如何像上面那样输出?错误代码在哪里

您正在为每个循环打印数组,试试这个:

 public function inputData(){
        $provinsi = $this->input->post('provinsi');
        $res = array();
        for ($i=0; $i < count($provinsi); $i++) { 
            $res[] = array(
                'id_finance' => '1',
                'provinsi'   => $provinsi[$i],
            );
         $this->db->insert_batch('lokasi', $res);
        }
        echo "<pre>", print_r($res);
    }

查看:-

<form method="post" action="<?php echo base_url() . 'testing/inputData'; ?>">
          <div>
               <input type="text" name="provinsi[]" class="form-control name_list"/>
               <button type="button" name="add">Add More</button>
          </div>                       
          <button type="submit" class="btn btn-info">submit</button>
 </form>
 

控制器代码:-

public function inputData(){
        $mainarray = array();
        $data= $this->input->post();
        for ($i = 0; $i < sizeof($data['provinsi']); $i++) {
           $arr = array(
                'id_finance'=>'1',
                'provinsi'=>$data['provinsi'][$i],
                $mainarray[] =  $arr;               
        }
       $table="table_name";
    $result=$this->db->insert_batch($table,$mainarray); 
     }