单选按钮和IF语句

时间:2014-10-02 13:00:25

标签: php mysql

我有一种单选按钮,我想要运行一些代码取决于选择哪个单选按钮。最初我是通过制作"名称"每种选择都有所不同,但由于每个单选按钮的名称应该相同,因此会引起问题。

这是表单代码示例

<li><label for="vsat">YES</label><input type="radio" name="camp" id="vsat" value="vsat" ></li>
<li><label for="vsat2">NO</label><input type="radio" name="camp" id="vsat2"     value="vsat2" ></li>

所以有两种选择,是或否。我希望它回应#34;你选择了YES&#34;如果选择是和&#34;你选择NO&#34;如果没有被选中。

以下是我试图做的事情

if(isset($_POST['vsat'])){
    echo "You chose YES";
}elseif(isset($_POST['vsat2'])){
    echo "You chose NO";
}

有意义吗?我甚至不确定我是否有可能尝试

4 个答案:

答案 0 :(得分:3)

所选单选按钮('vsat''vsat2')的值将分配给$_POST['camp'],而'camp'是广播的name - 按钮:

if (isset($_POST['camp']) && $_POST['camp']=='vsat') {
    echo "You chose YES";
} elseif (isset($_POST['camp']) && $_POST['camp']=='vsat2') {
    echo "You chose NO";
}

PS:如果没有选中这两个单选按钮,则isset()会阻止NOTICE弹出。在这种情况下,$_POST['camp']将是未定义的。

答案 1 :(得分:3)

你应该检查$ _POST ['camp']变量的值:

if ($_POST['camp']) == 'vsat') {
    echo "You chose YES";
} elseif ($_POST['camp'] == 'vsat2') {
    echo "You chose NO";
}

当您提交表单而不是ID时,变量的名称将作为$ _POST变量传递。

答案 2 :(得分:2)

我认为您需要像这样更改您的代码:

if ($_POST['camp'] == 'vsat') {
    echo "You chose YES";
}
elseif ($_POST['camp'] == 'vsat2') {
    echo "You chose NO";
}

将要检查的值放在radio-button-group中将发送到变量$_POST['camp']内的PHP脚本(&#39; camp&#39;是单选按钮的名称参数)。它将包含价值&#39; vsat&#39;或&#39; vsat2&#39;。

答案 3 :(得分:1)

这个PHP代码

 <?php
    if(isset($_POST['submit_btn'])){
    echo  $_POST['camp'];

    if($_POST['camp']=='vsat'){

    echo "You chose YES";

    }else{
    echo "You chose NO";

    }

}
?>

这是表格

<form method="post" action="">
<li><label for="vsat">YES</label><input type="radio" name="camp" id="vsat" value="vsat" ></li>
<li><label for="vsat2">NO</label><input type="radio" name="camp" id="vsat2"     value="vsat2" ></li>
<li><input type="submit" name="submit_btn" /></li>
</form>