我正在使用Codeigniter编写一个小型应用程序来跟踪付款和付款日期。我有一个表格,我们在其中输入有关客户的详细信息,在这些字段中,我们输入将用于为客户支付全部保险费的分期付款。
下一页将使用此数字,并生成相同数量的字段。例如instalment_1,date_1;第2批,日期_2。
<?php for($i=1; $i<=$instalments; $i++):?>
<div class="row form-group">
<div><label>Instalment <?php echo $i;?></label></div>
<div>
<input type="text" id="instalment_<?php echo $i;?>" name="instalment_<?php echo $i;?>">
</div>
</div>
<div class="row form-group">
<div><label>Premium Date <?php echo $i;?></label></div>
<div>
<input type="text" id="date_<?php echo $i;?>" name="date_<?php echo $i;?>" class="form-control">
</div>
</div>
现在的想法是遍历此表单,并将每期付款和日期集保存到数据库的1条记录中。如果我只有一种类型的字段(例如,分期付款),我就能做到。但是当我添加日期时,它正在保存,但是每条记录都会创建两次。
$post = $this->input->post();
foreach($post as $key=>$value){
//check for the word instalment
if(strpos($key, "instalment") == 0){
//get the instalment number from the name of the field
$inst_number = substr($key, -1);
//Use $category_id and $value in this loop to build update statement
echo "<script type='text/javascript'>alert('$inst_number');</script>";
//$arr = "inst_".$inst_number;
//reform the name of the field to get the values from it
$instalment_var = "instalment_".$inst_number;
$date_var = "date_".$inst_number;
echo "<script type='text/javascript'>alert('$instalment_var');</script>";
$amount = $this->input->post($instalment_var);
$date = $this->input->post($date_var);
echo "<script type='text/javascript'>alert('$amount');</script>";
$arr = array(
'payment_amount' => $amount,
'payment_date' => $date,
'policy_name' => $policy_id,
);
我该如何做才能使每条记录都没有保存两次?如果我添加另一个字段,它将被保存3次。
我虽然要命名div,并进行此工作,但我没有得到任何结果。
杨__羊羊