如何在PHP中插入不同数据的重复行到数据库中;超文本标记语言


How to insert duplicated rows of different data into Database in PHP & HTML

这是我使用的html代码示例。基本上,当我点击"添加新",新行出现,我输入数据。但问题是只有最后一行的数据(如果我添加3行,它只插入第三行的数据)插入到数据库

目前我使用简单的sql查询方法插入到数据库中,我不知道如何修改sql查询或代码,使其存储所有重复行的数据到数据库中。

如果你能帮我做这件事,我将不胜感激。谢谢! !http://jsfiddle.net/2HGdv/13/下面是它在jsfiddle上的工作方式。

一点是,我没有使用<? $i ?>旁边的变量在我的实际html代码,因为当我添加它,我得到错误。

  <br>
        <table id="maintable" width="50%" cellpadding="0" cellspacing="0" class="pdzn_tbl1" border="#729111 1px solid">
            <tr>
                <th align="center">Roll No</th>
                <th align="center">First Name</th>
                <th align="center">Last Name</th>
            </tr>
            <tr id="rows">
                <div style="padding-left: 5px">
                    <td style="padding:5px;">
                        <input type="text" name="rollno<? $i ?>" />
                    </td>
                    <td style="padding:5px;">
                        <input type="text" name="firstname<? $i ?>" />
                    </td>
                    <td style="padding:5px;">
                        <input type="text" name="lastname<? $i ?>" />
                    </td>
                </div>
            </tr>
        </table>
            <br><div id="add_new">ADD NEW
</div>

这是复制行的脚本。

$("#add_new").click(function () { 
    $("#maintable").each(function () {
        var tds = '<tr>';
        jQuery.each($('tr:last td', this), function () {
            tds += '<td>' + $(this).html() + '</td>';
        });
        tds += '</tr>';
        if ($('tbody', this).length > 0) {
            $('tbody', this).append(tds);
        } else {
            $(this).append(tds);
        }
    });
});

由于输入属性名称保持不变,因此您将覆盖数据。您需要创建一个HTML数组来保存每一行。然后在js中添加一行索引总.rowsvar total_rows = $(".rows").length;

<form method="post" action="stack.php">
    <table id="maintable" width="50%" cellpadding="0" cellspacing="0" class="pdzn_tbl1" border="#729111 1px solid">
        <tr>
            <th align="center">Roll No</th>
            <th align="center">First Name</th>
            <th align="center">Last Name</th>
        </tr>
        <tr class="rows">
            <td style="padding:5px;">
                <input type="text" name="item[0][rollno]" />
            </td>
            <td style="padding:5px;">
                <input type="text" name="item[0][firstname]" />
            </td>
            <td style="padding:5px;">
                <input type="text" name="item[0][lastname]" />
            </td>
        </tr>
        <tr class="rows">
            <td style="padding:5px;">
                <input type="text" name="item[1][rollno]" />
            </td>
            <td style="padding:5px;">
                <input type="text" name="item[1][firstname]" />
            </td>
            <td style="padding:5px;">
                <input type="text" name="item[1][lastname]" />
            </td>
        </tr>
    </table>
    <div id="add_new">ADD NEW</div>
    <input type="submit" value="Save all items" name="saveButton">
</form>
<?php
if (isset($_POST['item']) && is_array($_POST['item'])) {
    $items = $_POST['item'];
    $i = 0;
    foreach($items as $key => $value) {
        echo 'Item '.$i++.': '.$value['rollno'].' '.$value['firstname'].' '.$value['lastname'].'<br />';
    }
}
?>

那么你的下一行将是:

<tr class="rows">
    <td style="padding:5px;">
        <input type="text" name="item[2][rollno]" />
    </td>
    <td style="padding:5px;">
        <input type="text" name="item[2][firstname]" />
    </td>
    <td style="padding:5px;">
        <input type="text" name="item[3][lastname]" />
    </td>
</tr>