如何使用 PHP 获取提交时多个选定复选框的名称或 ID?以下是示例表格。谢谢。
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="checkbox" name="orange" id="orange">
<input type="checkbox" name="apple" id="apple">
<input type="checkbox" name="sky" id="sky">
<input type="checkbox" name="sea" id="sea">
<br>
<br>
<input type="submit" name="Submit" value="Submit">
</form>
仅当选中复选框时,才会从表单提交复选框值。更重要的是,重要的是名称属性,而不是 ID。
PHP 中有多种处理复选框的方法:
- 为所有复选框指定相同的名称,后跟一对方括号,以便将整个集合视为一个数组。在这种情况下,为每个复选框指定一个值。
- 为每个复选框指定不同的名称和值。
- 为每个复选框指定不同的名称,但没有值。
在每种情况下,您都需要检查 $_POST 数组中是否存在复选框名称。
例如:
<input type="checkbox" name="color[]" id="orange" value="orange">
<input type="checkbox" name="color[]" id="apple" value="apple">
要获取这些复选框的值:
if (isset($_POST['color'])) {
$colors = $_POST['color'];
// $colors is an array of selected values
}
但是,如果每个复选框都有不同的名称和显式值,如下所示:
<input type="checkbox" name="orange" id="orange" value="orange">
<input type="checkbox" name="apple" id="apple" value="apple">
您仍然需要使用 isset():
if (isset($_POST['orange'])) {
// orange has been set and its value is "orange"
}
如果不设置值,则默认值为“on”,但除非已被选择,否则它不会出现在 $_POST 数组中,因此您仍然需要使用 isset()。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)