2017-02-20 14 views
1

У меня есть форма, содержащая имена из массива, с каждым именем имея возможность выбрать параметры кнопки радио 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 
    } 

Пример как страница выглядит следующим образом:

sceenshot

Мой вопрос:

Как могу ли я получить опубликованные значения?

Скажем name2 и name4 вариант 10 выбраны и name5 вариант 20, как я могу получить отправленные значения в массив, который выглядит следующим образом:

$result = array(
    "name2" => "10", 
    "name4" => "10", 
    "name5" => "20" 
); 

Большое спасибо!

+1

просто удалить '[0]' индекс от входа name, следующим образом: '' ";' Затем проверьте опубликованные данные –

+1

Измените это как 'name = 'myradio [" . $ name. "] '', а затем просто получите доступ к' print_r ($ _ POST ['myradio']); ' – JustOnUnderMillions

+0

Я делаю это, но тогда я могу выбрать только одно число, а не число для каждого имени, тогда все значения становятся частью одного и того же переключателя. – Roddeh

ответ

-1
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> 
+0

Sry, но что такое возвращаемое значение' $ name [] 'здесь? – JustOnUnderMillions

1

вместо использования Еогеасп()

вы должны использовать цикл, как следовать

<?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> 

это должно устранить проблему

 Смежные вопросы

  • Нет связанных вопросов^_^