使用$ _POST发送单选框值

时间:2014-12-31 06:34:44

标签: php html forms post radio-button

即使字段为空,如何向$ _POST数组发送单选或复选框值?

<?php
    if(isset($_POST)) {
        echo '<pre>';
        print_r($_POST);
        echo '</pre>';
    }
?>

<form action="test.php" method="POST">
    <input type="text" name="name">
    <input type="text" name="email">
    <input type="radio" name="gender">

    <input type="submit"> 
</form>

如果我在没有填写数据的情况下点击提交,这就是我从页面获得的内容。

Array
(
    [name] => 
    [email] => 
)

如您所见,在未触及输入类型文本的情况下,其值被推送到$ _POST数组。我怎么能用收音机盒做到这一点?我本质上想要“设置”它,虽然它像文本输入一样空白。

我知道我总是可以打电话

<?php
  if(isset($_POST['gender'])) {
     //Code
  }
?>

但这不一定是我在寻找的东西。我需要它自动设置。提前谢谢!

6 个答案:

答案 0 :(得分:1)

应该是:

HTML:

<form action="test.php" method="POST">
    <input type="text" name="name">
    <input type="text" name="email">
    <input type="radio" name="gender" value="male"/>Test
    <input type="submit" name="submit" value="submit"/>
</form>

PHP代码:

if(isset($_POST['submit']))
{

    echo $radio_value = $_POST["radio"];
}

答案 1 :(得分:1)

试试这个会起作用:

Unchecked radio元素未提交,因为它们不被视为successful。因此,您必须检查是否使用issetempty函数发送了这些内容。

<?php
    if(isset($_POST)) {
        echo '<pre>';
        print_r($_POST);
        echo '</pre>';
    }
?>

<form action="test.php" method="POST">
    <input type="text" name="name">
    <input type="text" name="email">
    <input type="radio" name="Gender" value="1"/>Male
    <input type="submit" name="submit" value="submit"/>
</form>

答案 2 :(得分:1)

考虑这个例子:

// Set a default value as male
<input type="radio" name="gender" checked value="male"> Male
<input type="radio" name="gender" value="femail"> Female

您将获得值

Array
(
    [name] => 
    [email] => 
    [gender]=>male
)

您只能获得checked数组

中的$_POST广播

答案 3 :(得分:0)

如果要自动发送空白值,请执行
默认情况下,选中该单选按钮并设置空白值:

<form action="test.php" method="POST">

<input type="text" name="name">
<input type="text" name="email">
<input type="radio" name="gender" value='' checked>

<input type="submit"> 
</form>

答案 4 :(得分:0)

HTML :
<form action="test.php" method="POST">
<input type="text" name="name">
<input type="text" name="email">
<input type="radio" name="gender" checked  value="male"/>Male
<input type="radio" name="gender" value="female"/>Female
<input type="submit" name="submit" value="submit"/>
</form>

PHP :
 if(isset($_POST)) {
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
}

答案 5 :(得分:0)

<form action="" method="POST">
<input type="text" name="name">
<input type="text" name="email">
<input type="radio" name="gender" checked value="male"> Male
<input type="radio" name="gender" value="femail"> Female
<input type="submit" value="submit"> 
</form>

<?php
if(isset($_POST)) {
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
}
?>