Хранение входных данных из нескольких тегов SELECT в массив PHP
У меня есть поле ввода, повторенное 3 раза, и я хотел бы сохранить значения, введенные в каждом из полей, в массиве PHP.
Я назвал каждый ВАРИАНТ 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>
2
1 answers
Измените []
с тега опции на свой тег выбора:
<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 />';
}
3
Author: Phil Cross, 2013-06-04 16:40:40