如何阅读,如果一个复选框被选中在PHP?
当前回答
当使用复选框作为数组时:
<input type="checkbox" name="food[]" value="Orange">
<input type="checkbox" name="food[]" value="Apple">
你应该使用in_array():
if(in_array('Orange', $_POST['food'])){
echo 'Orange was checked!';
}
记得先检查数组是否被设置,例如:
if(isset($_POST['food']) && in_array(...
其他回答
<?php
if (isset($_POST['add'])) {
$nama = $_POST['name'];
$subscribe = isset($_POST['subscribe']) ? $_POST['subscribe'] : "Not Checked";
echo "Name: {$nama} <br />";
echo "Subscribe: {$subscribe}";
echo "<hr />";
}
?>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" >
<input type="text" name="name" /> <br />
<input type="checkbox" name="subscribe" value="news" /> News <br />
<input type="submit" name="add" value="Save" />
</form>
了解isset,它是一个内置的“函数”,可以在if语句中使用,以判断一个变量是否已被使用或设置
例子:
if(isset($_POST["testvariabel"]))
{
echo "testvariabel has been set!";
}
Wordpress有checked()函数。 参考:https://developer.wordpress.org/reference/functions/checked/
checked( mixed $checked, mixed $current = true, bool $echo = true )
描述 比较前两个参数,如果相同则标记为选中
参数 美元的检查 (混合)(必选)要比较的值之一
当前美元 (混合)(可选)(true)如果不是true,要比较的另一个值 缺省值:true
美元的回声 (可选)是否返回或返回该字符串 缺省值:true
返回#返回 (string) HTML属性或空字符串
<?php
if(isset($_POST['nameCheckbox'])){
$_SESSION['fr_nameCheckbox'] = true;
}
?>
<input type="checkbox" name="nameCheckbox"
<?php
if(isset($_SESSION['fr_nameCheckbox'])){
echo 'checked';
unset($_SESSION['fr_nameCheckbox']);
}
?>
$is_checked = isset($_POST['your_checkbox_name']) &&
$_POST['your_checkbox_name'] == 'on';
短路计算将会注意,这样您就不会在your_checkbox_name未提交时访问它。