通过在 html 的 `input[type="checkbox"]` 中设置 `value` 属性,可自定义选中时提交的值;而未选中时该字段根本不会出现在 `$_post` 中,需用 `isset()` 判断是否存在,从而实现“选中显示 positive,未选中显示 negative”的逻辑。
在 HTML 表单中, 默认提交的值是 "on"(当未显式指定 value 时)。但你完全可以自定义这个值——只需添加 value 属性即可:
此时,若用户勾选该复选框,$_POST['selection'] 将等于字符串 "Positive";若未勾选,则该键 根本不会存在于 $_POST 数组中(这是关键!HTML 规范决定:未选中的 checkbox 不会发送任何数据)。
因此,在 PHP 后端中,不能直接使用 $_POST['selection'],而应先判断其是否存在:
$selection = isset($_POST['selection']) ? $_POST['selection'] : 'Negative'; $mail->Body = "Answer is " . $selection . "\n";
✅ 这样就能确保:
⚠️ 注意事项:
总结:复选框的值控制 = 前端设 value(定义“真值”) + 后端用 isset()(定义“假值”),简洁、可靠、无副作用。