具有多个相同输入名称的post数组

时间:2014-07-07 06:52:34

标签: php jquery arrays

我有一个发布公司和发票项目数组(invoice[])的表单。

我的表单获得了一些具有相同名称的输入,我想将它们推入数组并将它们作为每一项的一行发布到数据库中。如何在item[0], item[1]...etc中推送相同数组中的项目以将其正确存储在数据库中?

这是在我的表单中重复的输入组:

<tr>
    <td class="col-xs-0">
        <input type="checkbox" name="selected[]" class="checkall">
    </td>
    <td class="col-xs-5">
        <textarea type="text" name="invoice[description]" class="form-control" id="description" rows="1" value="{{invdtl_itemDescription}}"></textarea>
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[unit]" class="form-control" id="unit" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[qty]" class="form-control" id="qty" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[price]" class="form-control" id="price" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[discount]" class="form-control" id="discount" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[discountPrice]" class="form-control" id="discountPrice" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[total]" class="form-control" id="total" maxlength="5" pattern="\d+(\.\d{2})?">
    </td>
    <td class="col-xs-1">
        <input type="number" name="invoice[vat]" class="form-control" id="vat" value="23" maxlength="3" pattern="\d+(\.\d{2})?">
    </td>
</tr>

数组以$.ajax的形式发布到数据库的两个表中(一个用于invoice_header,一个用于invoice_details。发票项目(在表单中重复的项目)应该每次存储在invoice_details每行。

表格数据:

invoice[client]: 1
invoice[type]: receipt
invoice[invoice]: 155
invoice[date]: 2014-07-07
invoice[shipmethod]: 1
===== Item #1 =====
invoice[description]: Test
invoice[unit]: 1
invoice[qty]: 1
invoice[price]: 1
invoice[discount]: 1
invoice[discountPrice]: 1
invoice[total]: 1
invoice[vat]: 23
===== Item #2 =====
invoice[description]: Test 2
invoice[unit]: 2
invoice[qty]: 2
invoice[price]: 2
invoice[discount]: 2
invoice[discountPrice]: 2
invoice[total]: 2
invoice[vat]: 23

0 个答案:

没有答案