Sta*_*vas 0 html php checkbox post get
我有表单,这里是复选框,如何将值从复选框传递给PHP?例如:如果选中复选框则传递1,如果未选中0.
我正在使用以下内容:
<input type="checkbox" name="letter" value="letter" id="letter" checked="checked">
Run Code Online (Sandbox Code Playgroud)
这是我的表格:
<form class="form" method="post" action="GetFbId.php">
<h2>Registration</h2><hr/>
<label>First Name: </label>
<input type="text" name="first_name" id="first_name" required>
<label>Last Name: </label>
<input type="text" name="last_name" id="last_name" required>
<label>City: </label>
<input type="text" name="city" id="city" required>
<label>Email: </label>
<input type="text" name="email" id="email" required><br>
Accept to get letters
<input type="checkbox" name="letter" value="letter" id="letter" checked="checked">
<input type="submit" name="register" id="register" value="Register">
</form>
Run Code Online (Sandbox Code Playgroud)
$_POST['letter'] 将在且仅当在表单提交期间选中复选框时才会设置.
就像这样测试:
<?php
if(isset($_POST['letter']))
{
// $_POST['letter'] is set, checkbox has been checked.
}
Run Code Online (Sandbox Code Playgroud)
小智 5
在 PHP 中,复选框输入要么在$_POST数组中设置,要么不设置。选中的复选框将被设置,未选中的复选框则不会。
如果您将复选框的值更改为 1,那么这$_POST['letter']将是1
<input type="checkbox" name="letter" value="1" id="letter">
Run Code Online (Sandbox Code Playgroud)
然后,如果您需要将 0 保存到$letter变量中(如果未检查),
$letter = isset($_POST['letter']) ? $_POST['letter'] : 0;
Run Code Online (Sandbox Code Playgroud)
另一种选择是在前端执行此操作,将 0 或 1 的值保存到隐藏输入中,并$_POST['letter']在 PHP 端检查 的值,因为它始终有一个值
<input type="hidden" value="0" name="letter" id="letter">
<input type="checkbox" name="select_letter" value="1" id="select_letter"
onchange="document.getElementById('letter').value = this.checked ? 1 : 0">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14973 次 |
| 最近记录: |