如何$ _GET多个复选框值?

时间:2013-04-10 20:05:02

标签: php html checkbox get

<input type="checkbox" name="currency" value="usd"/>
<input type="checkbox" name="currency" value="euro"/>
<input type="checkbox" name="currency" value="cad"/>

我试图通过$ _GET请求获取货币值,例如/?currency=usd,cad,但我得/?currency=usd&currency=cad 然后$_GET['currency']只返回一个值。

添加name=currency[]只获取/?currency[]=usd&currency[]=cad

在某种数组中获取这些复选框值的正确方法是什么?

3 个答案:

答案 0 :(得分:4)

HTML:

<input type="checkbox" name="currency[]" value="usd"/>
<input type="checkbox" name="currency[]" value="euro"/>
<input type="checkbox" name="currency[]" value="cad"/>

PHP:

<?php
foreach($_GET['currency'] as $currency){
  echo $currency."<br/>";
  //or what ever
}
?>

答案 1 :(得分:0)

尝试这种方式:     名称= “货币[]”

我们必须告诉服务器端这是一个具有多个值的名称。

$ _ GET ['currency']必须是这样的数组。

答案 2 :(得分:0)

在你的html中,选中复选框名称:

<input type="checkbox" name="currency[]" value="usd"/>

这会将检查值添加到数组中。您的方法,每项检查都会覆盖$_GET

中的最后一项检查