如何查看哪个checkbox被选中?

如何在PHP中检查checkbox是否被选中?

如果checkbox被选中,则checkbox的值将被传递。 否则,该字段不会在HTTP邮件中传递。

 if (isset($_POST['mycheckbox'])) { echo "checked!"; } 

您可以通过isset()empty() (检查显式isset)天气checkbox来检查是否被选中

例如

  <input type='checkbox' name='Mary' value='2' id='checkbox' /> 

在这里你可以检查

 if (isset($_POST['Mary'])) { echo "checked!"; } 

要么

 if (!empty($_POST['Mary'])) { echo "checked!"; } 

以上将只检查一个,如果你想要做很多比你可以做一个数组而不是单独写入所有checkbox尝试像

 <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] ). " "; } } 

尝试这个

 <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> <?php if(isset($_POST['like']) { echo "You like Stackoverflow."; } else { echo "You don't like Stackoverflow."; } ?> 

或这个

 <?php if(isset($_POST['like']) && $_POST['like'] == 'Yes') { echo "You like Stackoverflow."; } else { echo "You don't like Stackoverflow."; } ?> 

如果你不知道你的页面有哪些checkbox(例如:如果你正在dynamic地创build它们),你可以简单地把一个隐藏的字段放在checkbox的正上方。

 <input type="hidden" name="foo" value="0" /> <input type="checkbox" name="foo" value="1"> 

这样,您将根据是否选中checkbox来获得1或0。

我喜欢短手,所以:

 $isChecked = isset($_POST['myCheckbox']) ? "yes" : "no";