带有复选框的GET方法-PHP


GET method with checkboxes - PHP

我试图使用php在单独的页面上显示复选框的结果,但目前它显示为"数组",而不是列出已选中的复选框。

这是我的html:

Vegetarian <input type="checkbox" name="diet[]" value="Vegetarian">
Vegan <input type="checkbox" name="diet[]" value="Vegan">
Peanut Allergy <input type="checkbox" name="diet[]" value="PeanutAllergy">
Gluten Allergy <input type="checkbox" name="diet[]" value="GlutenAllergy">

以下是php代码:

<li><b>Dietary Requirements: </b> <?php echo $_GET['diet']; ?></li>

我真的很感谢任何帮助,我是php的新手!

您在字符串上下文中抛出一个数组,这意味着您将看到Dietary Requirements: Array

至少,您应该implode()数组,使其成为字符串:

<?php echo implode($_GET['diet']); ?>

注意,像这样直接将用户输入转储到输出页面非常容易受到XSS攻击。

取决于,循环通过数组或implode() it:

foreach($_GET['diet'] as $diet) {
    echo $diet;
}
//or
echo implode(', ', $_GET['diet']);

使用此

<li><b>Dietary Requirements: </b> 
<?php
    $checks = $_GET['diet'];
  foreach($checks as $check){
       echo $check."<br>";
  }
?>
</li>