带复选框的GET方法 - PHP

时间:2013-12-05 20:44:22

标签: php forms methods checkbox get

我试图使用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的新手!

3 个答案:

答案 0 :(得分:3)

你在字符串上下文中吐出一个数组,这意味着你只是要看Dietary Requirements: Array字面意思。

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

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

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

答案 1 :(得分:1)

取决于循环数组或implode()

foreach($_GET['diet'] as $diet) {
    echo $diet;
}

//or

echo implode(', ', $_GET['diet']);

答案 2 :(得分:0)

使用此

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