HTML。如何将复选框值传递给php?

时间:2015-03-25 12:29:02

标签: php html post checkbox get

我有表单,这里是复选框,如何将值从复选框传递给PHP?例如:如果选中复选框则传递1,如果未选中0

我正在使用以下内容:

<input type="checkbox" name="letter" value="letter" id="letter" checked="checked">

这是我的表格:

  <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>

6 个答案:

答案 0 :(得分:7)

当且仅当在表单提交期间选中复选框时,才会设置

$_POST['letter']

就这样测试:

<?php
if(isset($_POST['letter']))
{
    // $_POST['letter'] is set, checkbox has been checked.
}

答案 1 :(得分:3)

在PHP中,复选框输入将在$_POST数组中设置,或者他们不会。选中的复选框将被设置,未选中复选框将不会。

如果您将复选框的值更改为1,那么$_POST['letter']将为1

<input type="checkbox" name="letter" value="1" id="letter">

然后,如果未检查$letter变量需要保存为0,

$letter = isset($_POST['letter']) ? $_POST['letter'] : 0;

另一种选择是在前端执行此操作,将值0或1保存到隐藏输入中,并检查PHP端的$_POST['letter']值,因为它始终具有值

<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">

答案 2 :(得分:2)

如果在提交表单后选中复选框,我们可以在php

中获取复选框值
 <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">

在提交表单

后获取GetFbId.php中的复选框值
<?php

//get post value
if(isset($_POST['letter']))
{
    echo $letter =  $_POST['letter']; //get check box value
}

?>

答案 3 :(得分:1)

你可以尝试这样的事情:

<?php
    if(isset($_REQUEST['letter']) && $_REQUEST['letter']=="letter"){
       $letter = $_POST['letter']; // check box value
    }
?>

答案 4 :(得分:1)

你可以像这样使用

<?
if(isset($_POST['register']))
{
   // other code
   $checkboxval= $_POST['letter']; //if checked 1 if not 0
}        
?>

答案 5 :(得分:1)

<?php
if(isset($_POST['letter'])){
   $letter = true;
}else{
   $letter = false;
}

&GT;

这是你要的吗?