【问题标题】:Get values of radio buttons in a while loop php在while循环php中获取单选按钮的值
【发布时间】:2019-07-01 03:12:28
【问题描述】:

我的表单中有以下代码..如何获取所有单选按钮值的值。我正在使用每个循环,但我仍然只得到最后一个值

while ($row = mysqli_fetch_array($resultselect,MYSQLI_ASSOC)){  ?>

<input type="radio" name="site<?php echo $counter; ?>[]" id="su" value="1"/>

<input type="radio" name="site<?php echo $counter; ?>[]" id="sf" value="2" />

<input type="radio" name="site<?php echo $counter; ?>[]" id="so" value="3" class="selected" />>

<?php  $counter++; }

这是我期望值的每个循环

    foreach($_POST as $key => $val){

      if(substr($key, 0, 4) == 'site'){

        print_r($val);
      }
    }

【问题讨论】:

  • name="site[&lt;?php echo $counter; ?&gt;]" 或者更好的 name="site[&lt;?php echo $row['id']; ?&gt;]" 假设您的 id 列名为 id。你不需要substr
  • 您想一次选择单个电台还是多个电台?还是从三个中我们只能选择一个收音机?
  • 每一行都有这 3 个按钮。为每一行选择一个单选。我想要每一行的值,但它只返回 1 行值。请帮我弄清楚我哪里出错了
  • 谢谢 Quasimodo 的克隆我使用了 name="site" 并循环提交以获取 id 和值

标签: php foreach while-loop


【解决方案1】:

单选按钮默认为数组。你不必提及[]:

每一行都有不同的单选按钮,带有像site1,site2这样的计数器

while ($row = mysqli_fetch_array($resultselect,MYSQLI_ASSOC))
{?>
   <tr>
    <td>
    <input type="radio" name="site<?php echo $counter;?>"  value="1"/>
    <input type="radio" name="site<?php echo $counter;?>"  value="2" />
    <input type="radio" name="site<?php echo $counter;?>"  value="3"/>
    <td>
   </tr>
   <?php
   $counter++; 
}?>

当您从每个'&lt;tr&gt;' 中选择收音机时,如果有'&lt;tr&gt;' 没有选择单选按钮,则将发送所选收音机的值,则不会发布。

for循环:

foreach($_POST as $key=>$value)
{
   echo "KEY:".$key."=>Value:".$value;
}

【讨论】:

  • 谢谢,我发现收音机的名称使用了 id
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-03-14
  • 1970-01-01
  • 1970-01-01
  • 2017-04-30
  • 2015-01-08
  • 2021-10-19
  • 1970-01-01
相关资源
最近更新 更多