Это HTML:
<input type="text" name="shortcut[]" value="a"/> do <input type="text" name="ses[]" value="1" disabled/><br> <input type="text" name="shortcut[]" value="b"/> do <input type="text" name="ses[]" value="2" disabled/><br> <input type="text" name="shortcut[]" value="c"/> do <input type="text" name="ses[]" value="3" disabled/><br>
Как передать значения PHP, но соединить индексы обоих массивов?
т.е.
введите значение базы данных 1 где something = a,
введите значение базы данных 2, где что-то = b
и так далее …
Индексы подключаются автоматически, так как это числовые массивы.
$nvals = count($_REQUEST['shortcut']); for ($i = 0; $i < $nvals; $i++) { // do something with $_REQUEST['shortcut'][$i] and $_REQUEST['ses'][$i] }
Комбинированный массив: array_map(null,$_POST['shortcut'],$_POST['ses']);
Но вы, конечно, могли бы foreach
одну из двух, а другую – ключом.
Обратите внимание: если у вас есть элементы, которые могут быть отправлены или не отправлены (например, флажки), единственный способ сохранить группы – назначить их заранее ( name=sess[1]
, name=sess[2]
и т. Д. )
Вы можете указать значение shortcut
в качестве ключа и значение ses
в качестве атрибута value:
<input type="text" name="input[a]" value="1" /> <input type="text" name="input[b]" value="2" /> <input type="text" name="input[c]" value="3" />
На стороне сервера вы можете использовать цикл foreach
для итерации по массиву:
foreach ($_POST['input'] as $shortcut => $ses) { // process $shortcut and $ses }