【问题标题】:How to Get the multiple radio buttons values in PHP which having names dynamically如何在 PHP 中获取具有动态名称的多个单选按钮值
【发布时间】:2015-12-01 05:56:13
【问题描述】:

我的表单中有以下编码..如何在提交时获取所有单选按钮值的值,这些值在循环内?或者给我任何其他解决方案。

<form action="res.php" method="post">
<?php
    for($i=1;$i<=5;$i++)
    {
?>
        <div class="well well-sm well-primary">
            <input type="hidden" name="ques"/>Questions?
        </div>
        <div class="well well-sm">
            <div class="radio">
                <label>
                    <input type="radio" name="optradio<?php echo $i; ?>" value="a">Option 1
                </label>
            </div>
            <div class="radio">
                <label>
                    <input type="radio" name="optradio<?php echo $i; ?>" value="b">Option 2
                </label>
            </div>
            <div class="radio">
                <label>
                    <input type="radio" name="optradio<?php echo $i; ?>" value="c">Option 3
                </label>
            </div>
        </div>
    <?php
    }
    ?>
    <button type="submit" class="btn btn-success" name="submit">Finish</button>
</form>

【问题讨论】:

  • 将名称作为数组name="optradio[$i]"(即name="optradio[&lt;?php echo $i; ?&gt;]")和name="optradio$i"(即name="optradio&lt;?php echo $i; ?&gt;")总是更容易
  • 非常感谢..它的工作..

标签: php forms


【解决方案1】:

如下使用单选按钮数组

<form method="post">
    <?php
    for($i=1;$i<=5;$i++)
    {
        ?>
        <div class="well well-sm well-primary">
            <input type="hidden" name="ques"/>Questions?
        </div>
        <div class="well well-sm">
            <div class="radio">
                <label>
                <input type="radio" name="optradio[<?php echo $i; ?>]" value="a">Option 1</label>
            </div>
            <div class="radio">
                <label>
                <input type="radio" name="optradio[<?php echo $i; ?>]" value="b">Option 2</label>
            </div>
            <div class="radio">
                <label>
                <input type="radio" name="optradio[<?php echo $i; ?>]" value="c">Option 3</label>
            </div>
        </div>
        <?php
    }
    ?>
    <button type="submit" class="btn btn-success" name="submit">Finish</button>
</form>

要访问发布的值,您只需使用$_POST['optradio']

考虑选择5个问题为选项1、选项2、选项3、选项1、选项2 POST['optradio'] 会给出类似

的数组

数组 ( [1] => a [2] => b [3] => c [4] => a [5] => b)

要访问此数组中的单个值,您可以使用 foreach 循环作为,

<?php 
 foreach($_POST['optradio'] as $option_num => $option_val)
    echo $option_num." ".$option_val."<br>";
?>

【讨论】:

    【解决方案2】:

    在 for 循环中使用一个隐藏的输入来存储单选按钮名称数组 喜欢

    <input type="hidden" name="testradio[]" value="optradio<?php echo $i; ?>">
    

    然后使用 foreach 获取单选按钮值

    $rdobtn = $_POST['testradio'];
    $idx = 0;
    
        foreach($rdobtn as $val){
    
          $rdovalue = $val[$idx];
    
          // perform opertation using above $rdovalue variable.
    
           $idx++;
        }
    

    }

    【讨论】:

      【解决方案3】:

      是的,正如肖恩所说,试试这个:

      <form action="res.php" method="post">
      <?php
          for($i=1;$i<=5;$i++)
          {
      ?>
              <div class="well well-sm well-primary">
                  <input type="hidden" name="ques"/>Questions?
              </div>
              <div class="well well-sm">
                  <div class="radio">
                      <label>
                          <input type="radio" name="optradio[<?php echo $i; ?>]" value="a">Option 1
                      </label>
                  </div>
                  <div class="radio">
                      <label>
                          <input type="radio" name="optradio[<?php echo $i; ?>]" value="b">Option 2
                      </label>
                  </div>
                  <div class="radio">
                      <label>
                          <input type="radio" name="optradio[<?php echo $i; ?>]" value="c">Option 3
                      </label>
                  </div>
              </div>
          <?php
          }
          ?>
          <button type="submit" class="btn btn-success" name="submit">Finish</button>
      </form>
      

      然后在 PHP 端使用下面的代码来获取单选按钮的值:

      foreach ($_POST['optradio'] as $optNum => $option) {
          // do stuff with $optNum and $option
      }
      

      【讨论】:

        【解决方案4】:

        试试这个:
        &lt;input type="radio" name="optradio[]" value="a"&gt;

        在 PHP 文件中, $_POST['optradio'] 将生成一个数组。

        【讨论】:

          猜你喜欢
          • 2017-08-21
          • 2017-06-06
          • 2016-06-22
          • 1970-01-01
          • 2012-06-09
          • 2013-05-25
          • 2017-06-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多