Есть ли какой-то список идентификаторов ввода или имен формы после отправки сценария?
Вопрос
Давайте представим, что у меня получилось следующее:
index.php генерирует форму с непредсказуемым количеством входных данных с определенными идентификаторами/именами и различными значениями, которые могут редактироваться пользователем и сохраняться с помощью script.php.
<form action="script.php" method="post">
<input id="1" name="1" type="text" value="1"/>
<input id="24" name="24" type="text" value="2233"/>
<input id="55" name="55" type="text" value="231321"/>
</form>
Скрипт.php:
Здесь мне нужно получить что-то вроде массива всех входных данных, сгенерированных index.php, и сохранить каждое значение, соответствующее его идентификатору/имени.
Есть ли способ сделать это?
Решение
Возможно, я что-то упускаю в вашем вопросе, но $_POST
Переменная будет содержать все пары имя => значение, которые вы запрашиваете.например, в приведенном выше фрагменте HTML:
print_r($_POST);
// contains:
array
(
[1] => 1
[24] => 2233
[55] => 231321
)
// example access:
foreach($_POST as $name => $value) {
print "Name: {$name} Value: {$value} <br />";
}
Другие советы
Используйте array_keys в переменной $_POST в script.php, чтобы извлечь созданные вами имена и использовать их для получения значений.
$keys = array_keys( $_POST );
foreach( $keys as $key ) {
echo "Name=" . $key . " Value=" . $_POST[$key];
}
Похоже, вы используете класс или фреймворк для создания форм. Вам нужно прочитать документацию по фреймворку, чтобы узнать, собирает ли он эти данные и где он собирает.