php获取checkbox多选项值时必须以数组形式了,如下:test[]再用php post获取就ko了,下面看代码.
- <form method="post" action="checktest.php">
- <input name="test[]" type="checkbox" value="1" />
- <input type="checkbox" name="test[]" value="2" />
- <input type="checkbox" name="test[]" value="3" />
- <input type="checkbox" name="test[]" value="4" />
- <input type="checkbox" name="test[]" value="5" />
- <input type="submit" name="submit" value="submit" />
- </form>
注意上面input的name属性,各个属性内容都一样,而且都是test[],加上[]的原因在于让test的内容变成数组形式传递。
checktest.php的代码内容如下:
- $str =implode(',',$_post['test']);
- print_r($str);
-
下面是另外一种方法,php代码:
- <input type="checkbox" name="weeks[]" id="weeks" value=1>
- <input type="checkbox" name="weeks[]" id="weeks" value=2>
- <input type="checkbox" name="weeks[]" id="weeks" value=3>
weeks后的中括号不可漏,否则用php获取的时候只能取到最后一个值,之后php就很好处理了,如下php代码:
方法一:
- $weeks = $_post['weeks'];
- for($i=0;$i<count($weeks);$i++)
- echo $weeks[1]."<br>";
方法二:
- $array = $this->request->getparameter("weeks[]");
- $str =implode(',',$array);
- echo $str;