我有一个迭代3次的输入字段,我想将输入的值存储在PHP数组的每个字段中。
我调用了每个OPTION item[]
,希望它能将每个值保存在同一个数组中。
这会有用吗?如果是,我将如何在PHP上检索它?
这是我的表格:
<tr>
<td>Items</td>
<td><select><?php
$items = $con -> prepare("SELECT * FROM item_descr");
$items ->execute();
while($info = $items->fetch(PDO::FETCH_ASSOC)) {
?>
<option name="item[]" value="<?=$info['id_item']?>"><?=$info['name']?></option><?php } ?>
</td>
<td>Quantity:</td>
<td><input name="quantity[]"></td>
<td><a href="" id="addItem">ADD</a></td>
</tr>
<tr class="moreItems">
<td>Items</td>
<td><select><?php
while($info = $items->fetch(PDO::FETCH_ASSOC)) {
?>
<option name="item[]" value="<?=$info['id_item']?>"><?=$info['name']?></option><?php } ?>
</td>
<td>Quantity:</td>
<td><input name="quantity[]"></td>
</tr>
<tr class="moreItems">
<td>Items</td>
<td><select><?php
while($info = $items->fetch(PDO::FETCH_ASSOC)) {
?>
<option name="item[]" value="<?=$info['id_item']?>"><?=$info['name']?></option><?php } ?>
</td>
<td>Quantity:</td>
<td><input name="quantity[]"></td>
</tr>
答案 0 :(得分:3)
将[]
从选项标记更改为您的选择标记:
<tr>
<td>Items</td>
<td><select name="items[]">
<?php
$items = $con -> prepare("SELECT * FROM item_descr");
$items ->execute();
while($info = $items->fetch(PDO::FETCH_ASSOC)) {
?>
<option name="item" value="<?=$info['id_item']?>"><?=$info['name']?></option>
<?php } ?>
</td>
<td>Quantity:</td>
<td><input name="quantity[]"></td>
<td><a href="" id="addItem">ADD</a></td>
</tr>
然后在您的PHP页面上,检索值:
foreach($_POST['items'] as $key => $itemValue)
{
echo 'Item: ' . $itemValue . '<br />';
echo 'Quantity: ' . $_POST['quantity'][$key] . '<br /><br />';
}