【问题标题】:Displaying Multiple CheckBox in php在php中显示多个复选框
【发布时间】:2014-01-31 04:27:44
【问题描述】:

现在,我要做的是选中任意两个或三个复选框,并在重定向到 multichk.php 页面后,应显示选中的复选框。

<?php

?>
<html>
    <form method="post" name="Myf" action="multichk.php">
        C <input type="checkbox" name="check_b[]" value="C" ><br>
        C++ <input type="checkbox" name="check_b[]" value="C++" ><br>
        Java <input type="checkbox" name="check_b[]" value="Java" ><br>
        <input type="submit" name="submit" value="Submit">
        </form>
    </html>

这两个是独立的文件。

<?php

?>
<html>
    <body>
        <form>
            <?php
            if(isset($_POST['submit']))
    {
    if(isset($_POST['check_b']))
      { 

        foreach($_POST['check_b'] as $ch)
        {
        ?>
        C <input type="checkbox" name="check_b[]" value="C" <?php if($ch=="C"){ echo "checked=\"checked\" "; } ?> ><br>
        C++ <input type="checkbox" name="check_b[]" value="C++" <?php if($ch=="C++"){ echo "checked=\"checked\" "; } ?> ><br>
        Java <input type="checkbox" name="check_b[]" value="Java" <?php if($ch=="Java"){ echo "checked=\"checked\" "; } ?> ><br>
       <?php

        }

      }
    }       
       ?>
        </form>
        </body>
    </html>

【问题讨论】:

    标签: checkbox multiple-select


    【解决方案1】:

    如果您使用与第一个文件中相同的 html 表单标记,如果我们选中了多个复选框,然后我们单击提交,然后自动重定向到表单操作文件。

    在您的第二个文件中使用没有操作部分的表单标签。

    【讨论】:

      【解决方案2】:

      将第二个文件代码更改为以下一个

      <html>
      <body>
      <form>
      <?php
      $checked = array();
      if(isset($_POST['submit']))
      {
          if(isset($_POST['check_b']))
          {  
              foreach($_POST['check_b'] as $ch)
              {
                  $checked[] = $ch;
              }
          }
      }       
      
      ?>
      C <input type="checkbox" name="check_b[]" value="C" <?php if(in_array("C", $checked)){ echo "checked=\"checked\" "; } ?> ><br>
      C++ <input type="checkbox" name="check_b[]" value="C++" <?php if(in_array("C++", $checked)){ echo "checked=\"checked\" "; } ?> ><br>
      Java <input type="checkbox" name="check_b[]" value="Java" <?php if(in_array("Java", $checked)){ echo "checked=\"checked\" "; } ?> ><br>
      </form>
      </body>
      </html>
      

      只有一个建议,如果你看到代码,你可能会意识到他们根本不需要使用两个单独的文件,你可以将表单操作发送到同一个文件:)

      【讨论】:

        猜你喜欢
        • 2013-09-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多