如何查看选中的复选框?

时间:2010-02-15 21:04:53

标签: php html checkbox input checked

如何检查PHP是否检查checkbox

5 个答案:

答案 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