动态HTML表单并保存到数据库的多个记录中

相同的

我正在使用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,
                );
                if(!$this->Policy_model->save_payment_details($arr)){
                    redirect('ships/index');
                }
            }
        }

我该如何做才能使每条记录都不保存两次?如果我添加另一个字段,它将被保存3次。

我虽然要命名div,并进行此工作,但我没有得到任何结果。

先感谢您。

奥古斯丁·杰宁

尝试使用此代码。这样可以解决您的问题。

视图:

<form action="action.php" method="POST">
<?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[]" name="instalment[]">
    </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[]" class="form-control">
    </div>
</div>
<?php } ?>
<input type="submit" name="submit" value="submit">
</form>

在您的控制器中:

$post = $this->input->post();
   $i=0;
   foreach($post as $key=>$value){
       $arr = array(
                    'payment_amount' =>$post['instalment'][$i],
                    'payment_date' => $post['date'][$i],
                    'policy_name' => 1,
                );
        $i++;
   }exit;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检索HTML动态表单字段数据并保存到MySQL数据库

OctoberCMS:如何防止将表单文件保存到数据库中?

是否将信息从表单保存到MongoDB数据库?

Laravel将动态输入数据数组保存到数据库中

在show.html.erb中使用简单表单(嵌套表单)不会将数据保存到数据库

在角度6中使用Typeorm将数据从表单保存到数据库

Django表单已发送但未保存到数据库

动态添加输入字段并将数据保存到lravel中的数据库

将联系表单7数据保存到自定义数据库而不是Wordpress数据库中

Django的表单不保存到数据库?

数据未使用Django表单保存到数据库

如何以良好的方式将多个Django表单保存到数据库中?提升效能

Rspec不会将记录保存到数据库

将数据记录保存到数据库中时,SQL语法错误

Django-将表单中的数据保存到数据库中

我的Django表单数据不会保存到我的数据库中

我的Web表单未成功保存到数据库

Laravel将多个表单保存到数据库

将信息从网络表单保存到数据库

如何使用 Laravel 5.4 将多个表单字段保存到数据库中

表单未将用户数据保存到数据库 Django 中

Django 没有将表单保存到数据库

如何将多个动态文本框值保存到 SQL Server 数据库中

Django - 表单数据不会保存到数据库

Django:使用 formtools 在页面中拆分表单并保存到数据库

将不同数据库中的多个数据保存到一个数据库中

尝试动态保存到数据库

我的按钮没有将表单保存到数据库中。请帮忙

django 表单未保存到数据库