首页 > 解决方案 > 如何在单个数据库列中插入动态添加的输入字段值?

问题描述

我在我的应用程序中添加了 2 个动态添加的输入字段。

我想在 2 个数据库列中插入 2 个字段值。

<div class="form-group ">
    <div id="itemRows"  class="col-md-12">
       <div class="row">
          <label>Earnings</label> <input type="text" name="add_qty" size="4" /> 
          <label>Amount <input type="text" name="add_name"   oninput="this.value 
           = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');" /> 
           <button onclick="addRow(this.form);"><i class="menu-icon mdi mdi-
           plus-circle"></i></button></div>

           <script>
           var rowNum = 0;
           function addRow(frm) {
            rowNum ++;
            var row = '<p id="rowNum'+rowNum+'">Earnings: <input type="text" 
             name="qty[]" size="4" value="'+frm.add_qty.value+'"> Amount: <input 
             type="text"   name="name[]"   value="'+frm.add_name.value+'"> 
             <input type="button" value="Remove" 
              onclick="removeRow('+rowNum+');"></p>';
              jQuery('#itemRows').append(row);
               frm.add_qty.value = '';
               frm.add_name.value = '';
               }

            </script>
            <script>
                 function removeRow(rnum) {
                    jQuery('#rowNum'+rnum).remove();
                 }
            </script>
       </div>
</div>

我想将所有收入添加到数据库中的收益列和金额列中

标签: javascriptphpjquery

解决方案


首先请更正您的代码在此命名在两个 Html 中是不同的

<?php include 'config.php';

for($i = 0; $i < count($_POST['add_qty']); $i++)
{
    $add_qty = mysqli_real_escape_string($connect, $_POST['add_qty'][$i]);
    $add_name = mysqli_real_escape_string($connect, $_POST['add_name'][$i]);

    if (empty(trim($add_qty))) continue;

    $sql = "INSERT INTO earnigs_tbl(earnings, amount)
            VALUES('$add_qty', '$add_name')";
    mysqli_query($connect, $sql);
}

if(mysqli_error($connect))
{
    echo "Data base error occure";
}
else
{
    echo $i . " rows added";
}
?>
<div class="form-group ">
    <div id="itemRows"  class="col-md-12">
       <div class="row">
          <label>Earnings</label> <input type="text" name="add_qty" size="4" /> 
          <label>Amount <input type="text" name="add_name"   oninput="this.value 
           = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');" /> 
           <button onclick="addRow(this.form);"><i class="menu-icon mdi mdi-
           plus-circle"></i></button></div>

           <script>
           var rowNum = 0;
           function addRow(frm) {
            rowNum ++;
            var row = '<p id="rowNum'+rowNum+'">Earnings: <input type="text" 
             name="add_qty[]" size="4" value="'+frm.add_qty.value+'"> Amount: <input 
             type="text"   name="add_name[]"   value="'+frm.add_name.value+'"> 
             <input type="button" value="Remove" 
              onclick="removeRow('+rowNum+');"></p>';
              jQuery('#itemRows').append(row);
               frm.add_qty.value = '';
               frm.add_name.value = '';
               }

            </script>
            <script>
                 function removeRow(rnum) {
                    jQuery('#rowNum'+rnum).remove();
                 }
            </script>
       </div>
</div>

推荐阅读