Codeigniter相同的输入名称数组

时间:2016-07-04 10:24:54

标签: php mysql arrays codeigniter

我正在开发这个应用程序,我需要实现这样的功能,在系统中我们允许系统管理员添加客户及其车辆,

客户可以拥有一辆或多辆车,默认情况下有8个字段可以添加客户车辆的信息我已将所有输入字段命名为“车辆[]”

ex:<input type="text" name="vehicle[]" placeholder="" class="form-control name_list" />

所有输入字段都以“vehicle []”命名。

this is my interface

点击“添加另一个”用户将获得另一组相同的字段(相同的8个默认字段),这个字段也具有相同的名称“vehicle []”。

我想要做的是将所有车辆信息插入我的数据库中的车辆表。列车辆编号为vehicle_number等。

我如何处理数组或其他方法。

1 个答案:

答案 0 :(得分:0)

制作这样的表格

<input type="text" name="vehicle[vehicle_no][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[make][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[model][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[chassis_no][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[engine][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[color][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[type][]" placeholder="" class="form-control name_list" />
<input type="text" name="vehicle[battery][]" placeholder="" class="form-control name_list" />

所以在CI中,您可以像访问它一样访问它: -

$postedData = $this->input->post();
$objectToinsert = array()
for($postedData['vehicle']['vehicle_no'] as $key => $vehicle){
     //This is how you can get individual record
     $objectToinsert['vehicle_no'] = $postedData['vehicle']['vehicle_no'][$key];
     $objectToinsert['make'] = $postedData['vehicle']['make'][$key];
     $objectToinsert['model'] = $postedData['vehicle']['model'][$key];
     $objectToinsert['chassis_no'] = $postedData['vehicle']['chassis_no'][$key];
     so on.................
     $this->db->insert('vehicle', $postedData);

}