Если вы отправляете содержимое формы в php и вам нужно получить значения ваших входных данных, все они присутствуют в массиве $ _POST.
каждый вход (также выбирается) присутствует с атрибутом html-name.
для вашего элемента формы "runner_up_team" вы можете получить к нему следующий доступ:
$val = $_POST["runner_up_team"]; // $val contains the seleceted value from the html-select
Так что, если вы хотите получить номер для выбранного поля, я бы предложил использовать что-то вроде этого:
$result = new array();
foreach ($_POST as $inputName => $value) {
// We only want to inspect the selects and retrieve the number value later.
if (strpos($inputName, '_val') === FALSE) {
if ($value != '') {
// With the current select name + the suffix we get the name for the number input field
$numberInputName = $inputName . '_val';
// Now we can access the value of the number input with the name.
$numberInput = $_POST[$numberInputName];
// now you can put your data into a result array.
$result[$value] = $numberInput;
}
}
}
Массив результатов должен выглядеть следующим образом:
["runner_up_team" => 43, "max_six" => 32]
Если вы сейчас хотите получить к нему доступ в цикле, вы можете использовать предыдущий пример, но использовать массив результатов:
<?php
foreach ($result as $key => $value) {
if($value != "") {
echo "<table>";
echo "<tr>";
echo "<td>";
echo $key;
echo "</td>";
echo "<td>";
echo $value;
echo "</td>";
echo "</tr>";
echo "</table>";
}
}
?>
UPDATE
На ваш вопрос в комментарии:
заменить следующую строку
$result[$value] = $numberInput;
с
$element = new array();
$element['select_name'] = $inputName;
$element['number'] = $numberInput;
$element['select_value'] = $value;
$result[] = $element;
Это изменит второй foreach на:
<?php
foreach ($result as $value) {
echo "<table>";
echo "<tr>";
echo "<td>";
echo $value['select_name'];
echo "</td>";
echo "<td>";
echo $value['select_value'];
echo "</td>";
echo "<td>";
echo $value['number'];
echo "</td>";
echo "</tr>";
echo "</table>";
}
?>