如何检查PHP $ _POST单击哪个单选按钮?

时间:2018-10-23 12:03:55

标签: php forms radio-button

我试图知道PHP以带有$ _POST ['...']的形式单击了哪个单选按钮。 这是我的表格:

<form action="" method="post" enctype="multipart/form-data">
   <div class="input-group">
        <span class="input-group-addon">Add:</span>
        <input type='radio' name='add1' id='program' value='program' onchange="hideCollege()" checked>  Program Intern</input>
        <input type='radio' name='add1' id='department_coop' value='department_coop' onchange="showCollegelist()">  Department Cooperation</input>
        <input type='radio' name='add1' id='foreigner' value='foreigner' onchange="hideCollege()">  Foreigner Area</input>
    </div>
</form>

我正在尝试通过以下方式接收三个单选按钮的值:

if(isset($_POST['program'])){
    $program = 1;
}
else if(isset($_POST['foreigner'])){
    $foreigner = 1;
}
else if(isset($_POST['department_coop'])){
    $coop = 1;
    $college = $_POST['college'];
    $department = $_POST['department'];
}

但是似乎没有 if 语句为真,因此没有为变量赋值。有谁知道如何达到我的目标?非常感谢。

3 个答案:

答案 0 :(得分:2)

在下面的部分中尝试此操作。发布请求值应在表单名称属性上处理。因此必须检查条件表单的帖子名称值。

if(isset($_POST['add1']) && $_POST['add1']=='program' ){
    $program = 1;
}
else if(isset($_POST['add1']) && $_POST['add1']=='foreigner' ){
     $foreigner = 1;
}
else if(isset($_POST['add1']) && $_POST['add1']=='department_coop' ){
     $coop = 1;
    $college = $_POST['college'];
    $department = $_POST['department'];
}

答案 1 :(得分:1)

您应基于values属性检查单选按钮的name

if(isset($_POST['add1']) && $_POST['add1']=='program'){
    $program = 1;
}
else if(isset($_POST['add1']) && $_POST['add1']=='foreigner'){
    $foreigner = 1;
}
else if(isset($_POST['add1']) && $_POST['add1']=='department_coop'){
    $coop = 1;
    $college = $_POST['college'];
    $department = $_POST['department'];
}

然后您将获得检查值。

答案 2 :(得分:0)

如果您访问read_only,请检查该值,因为它应该是program,department_coop或外国人(在这种情况下)