如何检查PHP是否检查checkbox
?
答案 0 :(得分:67)
如果选中该复选框,则将传递复选框的值。否则,该字段不会在HTTP帖子中传递。
if (isset($_POST['mycheckbox'])) {
echo "checked!";
}
答案 1 :(得分:29)
您可以选中isset()
或empty()
(其检查显式isset)天气复选框是否已选中
例如
<input type='checkbox' name='Mary' value='2' id='checkbox' />
在这里你可以通过
查看if (isset($_POST['Mary'])) {
echo "checked!";
}
或
if (!empty($_POST['Mary'])) {
echo "checked!";
}
以上只会检查一个,如果你想做多个,而不是你可以制作一个数组,而不是为所有复选框分别写
<input type="checkbox" name="formDoor[]" value="A" />Acorn Building<br />
<input type="checkbox" name="formDoor[]" value="B" />Brown Hall<br />
<input type="checkbox" name="formDoor[]" value="C" />Carnegie Complex<br />
PHP
$aDoor = $_POST['formDoor'];
if(empty($aDoor))
{
echo("You didn't select any buildings.");
}
else
{
$N = count($aDoor);
echo("You selected $N door(s): ");
for($i=0; $i < $N; $i++)
{
echo htmlspecialchars($aDoor[$i] ). " ";
}
}
答案 2 :(得分:7)
试试这个
的index.html
<form action="form.php" method="post">
Do you like stackoverflow?
<input type="checkbox" name="like" value="Yes" />
<input type="submit" name="formSubmit" value="Submit" />
</form>
form.php的
<html>
<head>
</head>
<body>
<?php
if(isset($_POST['like']))
{
echo "<h1>You like Stackoverflow.<h1>";
}
else
{
echo "<h1>You don't like Stackoverflow.</h1>";
}
?>
</body>
</html>
或者这个
<?php
if(isset($_POST['like'])) &&
$_POST['like'] == 'Yes')
{
echo "You like Stackoverflow.";
}
else
{
echo "You don't like Stackoverflow.";
}
?>
答案 3 :(得分:5)
如果您不知道您的网页有哪些复选框(例如:如果您是动态创建它们),您只需在复选框上方放置一个名称相同且值为0的隐藏字段即可。
<input type="hidden" name="foo" value="0" />
<input type="checkbox" name="foo" value="1">
这样,您将根据是否选中该复选框获得1或0。
答案 4 :(得分:1)
我爱短手所以:
Failed: Error opening pcap file: truncated dump file; tried to read 4 file header bytes, only got 0