php получение значения полей

129
10 ноября 2019, 16:30

Есть html:

<form action="" method="POST">
   <input name="testname" value="1">
   <input name="testname" value="2">
   <input name="testname" value="3">
   <input name="testname" value="4">
   <input name="testname" value="5">
   <input name="testname" value="6">
   <input name="testname" value="7">
   <input name="testname" value="HELLO!!!">
   <input type="submit">
</form>

Соответственно, у всех полей одинаковое значение атрибута name. Изменить атрибут name никак нельзя.

Сам вопрос: как получить значения ВСЕХ полей через php? При попытке обратиться к $_POST['testname'] php возвращает только ПОСЛЕДНЕЕ ЗНАЧЕНИЕ (т.е. слово HELLO!!!).

var_dump($_POST) возвращает:

array(1) {["testname"]=> string(8) "HELLO!!!" }

Возможно ли как - нибудь исправить работу php скрипта, и сделать так, чтобы он показывал все значения полей?

Answer 1

Попробуйте так:

$input = file_get_contents('php://input');
$array = explode('&', $input);

В результате $array будет содержать такой массив:

array:8 [
    0 => "testname=1"
    1 => "testname=2"
    2 => "testname=3"
    3 => "testname=4"
    4 => "testname=5"
    5 => "testname=6"
    6 => "testname=7"
    7 => "testname=HELLO%21%21%21"
]

который вы можете преобразовать дальше по своему усмотрению, например, так:

$array = array_map(function($item) {
    return urldecode(explode('=', $item)[1]);
}, $array);

После этого получится:

array:8 [
    0 => "1"
    1 => "2"
    2 => "3"
    3 => "4"
    4 => "5"
    5 => "6"
    6 => "7"
    7 => "HELLO!!!"
]
READ ALSO
Редирект с страницы таксономии на index.php

Редирект с страницы таксономии на index.php

Делаю сайт на WP с использованием woocommerceУ меня есть категория hot-offers и соответственно сделан шаблон taxonomy

118
Узнать Place Id Google maps

Узнать Place Id Google maps

Есть ссылка на место в google mapsНапример https://goo

148
Qt QMediaPlayer кэш для данных из сети

Qt QMediaPlayer кэш для данных из сети

У меня есть список ссылок на треки которые я хочу проигрывать через QMediaPlayerЯ хочу что бы QMediaPlayer кэшировал файлы которые уже были скачены, но я не смог...

151
glsl uniform По дефолту или как проверить передана ли uniform переменная

glsl uniform По дефолту или как проверить передана ли uniform переменная

Ситуация: Пишу шейдер и делаю там функцию масштабаЕсли масштаб не задан из программы, хочу чтобы он был единицей

134