Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取所选下拉列表的值,以与另一个下拉列表进行比较_Php_Jquery_Mysql_Drop Down Menu - Fatal编程技术网

Php 获取所选下拉列表的值,以与另一个下拉列表进行比较

Php 获取所选下拉列表的值,以与另一个下拉列表进行比较,php,jquery,mysql,drop-down-menu,Php,Jquery,Mysql,Drop Down Menu,我有两个下拉列表,分支下拉列表从数据库中获取应用程序cn。sem下拉列表得到app_plan_no。但我需要得到branch下拉列表中选择的值,以便与sem下拉列表中选择的值进行比较 我看到了这个代码,但我不知道怎么做 <?php $mysqli = new mysqli("localhost", "root", "", "app"); $result = $mysqli->query("SELECT * FROM app GROUP BY app_cn ORD

我有两个下拉列表,分支下拉列表从数据库中获取应用程序cn。sem下拉列表得到app_plan_no。但我需要得到branch下拉列表中选择的值,以便与sem下拉列表中选择的值进行比较

我看到了这个代码,但我不知道怎么做

   <?php
    $mysqli = new mysqli("localhost", "root", "", "app");
    $result = $mysqli->query("SELECT * FROM app GROUP BY app_cn ORDER BY app_cn");
    echo'<select name="drop_1" id="drop_1">';
     while($row = $result->fetch_assoc())
        {
           echo '<option value="'.$row['app_cn'].'">'.$row['app_cn'].'</option>';
        }
echo'</select>';

if($_GET['func'] == "drop_1" && isset($_GET['func'])) {
   drop_1($_GET['drop_var']); 
}

function drop_1($drop_var)
{
    $mysqli = new mysqli("localhost", "root", "", "app");
    $results = $mysqli->query("SELECT * FROM app WHERE app_cn='$drop_var' GROUP BY app_plan_no ORDER BY app_plan_no");

    echo '<select name="tier_two" id="tier_two">
          <option value=" " disabled="disabled" selected="selected">Choose one</option>';

          while($drop_2 = $results->fetch_assoc())
            {
            if($drop_2['app_plan_no'] != '')
            {
              echo '<option value="'.$drop_2['app_plan_no'].'">'.$drop_2['app_plan_no'].'</option>';
            }
            }

}
echo'</select>';
?>

<script type="text/javascript">
$(document).ready(function() {
    $('#wait_1').hide();
    $('#drop_1').change(function(){
            if( $(this).val() == "ALL") {
            $("#wait_1").hide();
            $("#result_1").hide();
        }else{
      $('#wait_1').show();
      $('#result_1').hide();
      $.get("func.php", {
        func: "drop_1",
        drop_var: $('#drop_1').val()
      }, function(response){
        $('#result_1').fadeOut();
        setTimeout("finishAjax('result_1', '"+escape(response)+"')", 400);
      });
      }
        return false;
    });
});

function finishAjax(id, response) {
  $('#wait_1').hide();
  $('#'+id).html(unescape(response));
  $('#'+id).fadeIn();
}
</script>
这是我的选择下拉列表

<select name="branch" id="branch" onchange="showCourses()">
<option value="ALL" selected='ALL'>ALL</option>
<?php
$mysqli = new mysqli("localhost", "root", "", "app");
    $result = $mysqli->query("SELECT * FROM app GROUP BY app_cn ORDER BY app_cn");
     while($row = $result->fetch_assoc())
        {
           echo '<option value="'.$row['app_cn'].'">'.$row['app_cn'].'</option>';
        }?>
</select>
<select name="sem" id="sem" onchange="showCourses()">
<?php

$mysqli = new mysqli("localhost", "root", "", "app");
    $result = $mysqli->query("SELECT * FROM app GROUP BY app_plan_no ORDER BY app_plan_no");
     while($row = $result->fetch_assoc())
        {
           echo '<option value="'.$row['app_plan_no'].'">'.$row['app_plan_no'].'</option>';
        }
        ?>
</select>

全部的

要使用jquery获取select语句的值,请使用


要在使用php(服务器端)提交表单时获取select语句的值,可以在$\u POST变量中找到该变量的值,其中键是select语句的name属性的值。

我尝试过,但我不想使用表单。我想执行一个页面。听起来你想处理表单?那么,无论表单发布到哪个页面,都可以访问表单在$\u POST变量中提交的所有值。如果要在生成表单的同一页面上执行此操作,可以添加类似以下内容的If语句
If(isset($\u POST['tier\u two']){//performance}
I POST my table。我的问题是,下拉菜单sem echo的所有应用程序计划都没有。就像在我的表格中一样。comp1有两个应用程序计划编号,即1和2。而且comp2只有1号应用程序计划。当我在分支下拉列表中选择comp2时,sem下拉列表应该只回显1,但它也回显2。因为我的sem下拉列表中的查询没有where子句函数。比如这里的app\u cn='$drop\u var'。为了解决这个问题,我需要获取branch下拉列表的选定值,以与sem下拉列表进行比较,这样,如果我选择comp2,它将只回显app_plan_no 1。希望你明白我想说的。
<select name="branch" id="branch" onchange="showCourses()">
<option value="ALL" selected='ALL'>ALL</option>
<?php
$mysqli = new mysqli("localhost", "root", "", "app");
    $result = $mysqli->query("SELECT * FROM app GROUP BY app_cn ORDER BY app_cn");
     while($row = $result->fetch_assoc())
        {
           echo '<option value="'.$row['app_cn'].'">'.$row['app_cn'].'</option>';
        }?>
</select>
<select name="sem" id="sem" onchange="showCourses()">
<?php

$mysqli = new mysqli("localhost", "root", "", "app");
    $result = $mysqli->query("SELECT * FROM app GROUP BY app_plan_no ORDER BY app_plan_no");
     while($row = $result->fetch_assoc())
        {
           echo '<option value="'.$row['app_plan_no'].'">'.$row['app_plan_no'].'</option>';
        }
        ?>
</select>