0

私は次のような単純なフォームを持っています:

<tr data-good-id="1">
    <td><input type="text" name="good_id[item1]" value="1"/></td>
    <td><input type="text" name="size[item1]" value="XL"/></td>
    <td><input type="text" name="color[item1]" value="White"/></td>
    <td><input type="text" name="count[item1]" value="1"/></td>
</tr>
<tr data-good-id="2">
    <td><input type="text" name="good_id[item2]" value="2"/></td>
    <td><input type="text" name="size[item2]" value="L"/></td>
    <td><input type="text" name="color[item2]" value="Black"/></td>
    <td><input type="text" name="count[item2]" value="10"/></td>
</tr>

そして、送信後にテーブルの各行に対してこの関数を実行する必要があります:

foo_func($good_id, $size, $color, $count);

サンプル:

foo_func('1', 'XL', 'White', '1');
foo_func('2', 'L', 'Black', '10');

作り方は?私はそれ以上考えませんでした。

4

2 に答える 2

2

データが安全であると仮定して...これを試してください:

foreach ($_POST[good_id] as $index => $good_id) {
    foo_func($good_id, $_POST['size'][$index], $_POST['color'][$index], $_POST['count'][$index]);
}
于 2013-03-12T14:41:50.370 に答える
1

アイテムを含むプロパティではなく、アイテムにそのプロパティが含まれていることが最善だと思います。次のようにします。

<tr data-good-id="1">
    <td><input type="text" name="item[1][good_id]" value="1"/></td>
    <td><input type="text" name="item[1][size]" value="XL"/></td>
    <td><input type="text" name="item[1][color]" value="White"/></td>
    <td><input type="text" name="item[1][count]" value="1"/></td>
</tr>
<tr data-good-id="2">
    <td><input type="text" name="item[2][good_id]" value="2"/></td>
    <td><input type="text" name="item[2][size]" value="L"/></td>
    <td><input type="text" name="item[2][color]" value="Black"/></td>
    <td><input type="text" name="item[2][count]" value="10"/></td>
</tr>

次に、各アイテムに対して関数を実行します

foreach ($item as $c_item) {
    foo_func($c_item['good_id'],$c_item['size'],$c_item['color'],$c_item['count']);
}
于 2013-03-12T14:47:52.237 に答える