У меня есть форма, содержащая имена из массива, причем у каждого имени есть возможность выбора опций переключателей 5,10,20 и 50.
мой код содержит это:
$names = $names;
foreach ($names as $name)
{
// some div and html coding
"<input type='radio' name='".$name[0]."' value='5'>";
"<input type='radio' name='".$name[0]."' value='10'>";
"<input type='radio' name='".$name[0]."' value='20'>";
"<input type='radio' name='".$name[0]."' value='50'>";
// some other html and closing tags
}
Пример того, как выглядит страница:
Мой вопрос:
Как я могу получить опубликованные значения?
Скажем name2
а также name4
вариант 10
выбраны и name5
вариант 20
Как я могу получить опубликованные значения в массив, который выглядит следующим образом:
$result = array(
"name2" => "10",
"name4" => "10",
"name5" => "20");
большое спасибо!
вместо использования foreach ()
Вы должны использовать для цикла, как следует
<?php
if(isset($_POST)){
$names=[1,2,3,4,5,6,7];
foreach ($names as $key => $value) {
if(in_array($_POST[$key], $names))
# code...
echo 'Do Your Logic Here ';
}
}
?>
<form action="s.php" method='post'>
<?php
for($i = 0; $i <= count($names) ; $i++){
echo "<input type='radio' name='".$names[$i]."' value='5'>";
echo "<input type='radio' name='".$names[$i]."' value='10'>";
echo "<input type='radio' name='".$names[$i]."' value='20'>";
echo "<input type='radio' name='".$names[$i]."' value='50'>";
}
echo "<input type='submit' />";?>
</form>
это должно исправить вашу проблему
try this..
<php $names = $names;?>
<form method="post">
<php
foreach ($names as $name)
{
// some div and html coding
"<input type='radio' name='name[".$name."]' value='5'>";
"<input type='radio' name='name[".$name."]' value='10'>";
"<input type='radio' name='name[".$name."]' value='20'>";
"<input type='radio' name='name[".$name."]'' value='50'>";
// some other html and closing tags
} ?>
<input type="submit" />
</form>