我是PHP的新手。我怀疑将复选框项的值作为数组发布到另一个页面。谁能告诉我一个解决方案。
<form method="get">
<input type="checkbox" name="options[]" value="Politics"/> Politics<br/>
<input type="checkbox" name="options[]" value="Movies"/> Movies<br/>
<input type="checkbox" name="options[]" value="World "/> World<br/>
<input type="submit" value="Go!" />
</form>
,php代码是
<?php
$checked = $_GET['options'];
for($i=0; $i < count($checked); $i++)
{
echo "Selected " . $checked[$i] . "<br/>";
}
?>
答案 0 :(得分:2)
在执行php操作之前,请检查表单是否已提交并设置了options[]
值。如果是,则以[]
作为名称迭代数组。
试试这个:
<?php
if (isset($_REQUEST['submit']) && $_REQUEST['submit'] !== null) {
if (isset($_REQUEST['options'])) {
$options = $_REQUEST['options'];
$str = '';
for ($i = 0; $i < count($options); $i++) {
$str .= "Selected " . $options[$i] . "<br/>";
}
echo $str;
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>
Testing
</title>
<script src="js/jquery.min.js"></script>
</head>
<body>
<form method="get" name="form">
<input type="checkbox" name="options[]" value="Politics"/>
Politics
<br/>
<input type="checkbox" name="options[]" value="Movies"/>
Movies
<br/>
<input type="checkbox" name="options[]" value="World "/>
World
<br/>
<input type="submit" name="submit" value="Go"/>
</form>
<script>
</script>
</body>
</html>
答案 1 :(得分:2)
动作/答案也可以在不同的页面上。(正如我所做的那样)
索引页:
<!DOCTYPE html>
<html>
<head>
<title>
Testing
</title>
<script src="js/jquery.min.js"></script>
</head>
<body>
<form method="get" action="display.php">
<input type="checkbox" name="options[]" value="Politics"/>
Politics
<br/>
<input type="checkbox" name="options[]" value="Movies"/>
Movies
<br/>
<input type="checkbox" name="options[]" value="World "/>
World
<br/>
<input type="submit" name="submit" value="Go"/>
</form>
<script>
</script>
</body>
</html>
显示页面:
<?php
if (isset($_REQUEST['submit']) && $_REQUEST['submit'] !== null) {
if (isset($_REQUEST['options'])) {
$options = $_REQUEST['options'];
$str = '';
for ($i = 0; $i < count($options); $i++) {
$str .= "Selected " . $options[$i] . "<br/>";
}
echo $str;
}
}
?>
答案 2 :(得分:0)
<form method="post">//changed get to post
<input type="checkbox" name="options[]" value="Politics"/> Politics<br/>
<input type="checkbox" name="options[]" value="Movies"/> Movies<br/>
<input type="checkbox" name="options[]" value="World "/> World<br/>
<input type="submit" value="Go!" />
</form>
<?php
$checked = $_POST['options'];//changed get to post
for($i=0; $i < count($checked); $i++)
{
echo "Selected " . $checked[$i] . "<br/>";
}
?>
答案 3 :(得分:-2)
请在您的表单标记中添加操作属性,以便在其他页面上重定向,然后在该页面上发布以下代码。
<?php
$checked = $_GET['options'];
for($i=0; $i < count($checked); $i++)
{
echo "Selected " . $checked[$i] ;
}
?>