我有两个字段,一个是名字,另一个是这样的电子邮件。
<td class="left"><input style=" width: 30%; text-align: center;" type="text" name="name[]" value="<?php echo $geo_zone['name']; ?>" /></td>
<td class="left"><input style=" width: 30%; text-align: center;" type="email" name="email[]" value="<?php echo $geo_zone['email']; ?>" /></td>
名称是数组类型,因此我可以在运行时在其中存储多个值,因为我的表单是在运行时生成的,可能有多个名称和电子邮件,具体取决于数据库结果。
在我的控制器中,我只是在print_r()中获取这些值,以获得写入结果。但是当我为每个循环执行my时,它只运行一次并在数据库中插入最后一行。
$name= $this->request->post['name'];
$email= $this->request->post['email'];
foreach( $name as $key => $n ) {
$this->data['geo_zone_id']=$this->model_module_shipping_pools->Get_geo_zone_id($n);
$geo_zone_id=$this->data['geo_zone_id'];
$geo_zone_id=$geo_zone_id[0]['geo_zone_id'];
$this->model_module_shipping_pools->drop_data();
$mail=$email[$key];
$this->model_module_shipping_pools->insertData($geo_zone_id,$mail);
我不知道为什么它只运行一次。我在opencart工作。
答案 0 :(得分:0)
您需要具有相同数组名称的多个输入标记才能拥有数组值!
例如(我不知道你如何生成原始的html)你可能有:
<f:ajax listener="#{bean.changeListernMethod}" render="@form" event="valueChange"/>
查看有关如何使用数组here
的示例