【问题标题】:Populate 2nd dropdown based on 1st dropdown selected in PHP根据 PHP 中选择的第一个下拉列表填充第二个下拉列表
【发布时间】:2013-05-14 08:01:02
【问题描述】:

我正在使用 PHP 和 Postgresql/PostGIS 数据库。我的数据库架构是这样的。

  1. divname | 地区名称
  2. 达卡 |马尼甘杰
  3. 达卡 |纳拉扬甘杰
  4. 达卡 |蒙希甘杰
  5. 库尔纳 |杰索尔
  6. 库尔纳 |库什蒂亚
  7. 库尔纳 |梅赫布尔

我正在使用以下代码

<?php
$con = pg_connect("Connection Parameter");
if (!$con)
  {
  die("Could not connect: " . pg_last_error());
  }
$divquery = "SELECT DISTINCT divname FROM union_bgd 
        ORDER  BY divname";
$distquery = "SELECT DISTINCT distname FROM union_bgd
        ORDER  BY distname";
$resultDiv = pg_query($con, $divquery); 
$resultDist = pg_query($con, $distquery);

    ?>
    Division
  <select id="division" name="division" onclick = "">
  <option value="" selected="selected">Select a Division</option>
  <?php
      while($dd1 = pg_fetch_array( $resultDiv )) 
        {

        echo '<option value= "' . $dd1['divname'] . '">' . $dd1['divname'] . '</option>';

        }

    ?>

</select></br>
District
<select id="district" name="district" onclick = "">
  <option value="" selected="selected">Select a District</option>
  <?php
      while($dd2 = pg_fetch_array( $resultDist )) 
        {

        echo '<option value= "' . $dd2['distname'] . '">' . $dd2['distname'] . '</option>';

        }

    ?>

</select>

 <?php   
pg_close($con);
?>

目前它在下拉列表中填充所有 divname 和 distname,但我希望如果选择“Dhaka”,则只有 dhaka 下的 distname 将显示在第二个下拉列表中。

谢谢

【问题讨论】:

  • 您可能想使用 AJAX 来执行此操作,因为当 PHP 形成页面时,它不知道在第一个下拉列表中选择了哪个选项...如果您可以访问 jQuery,则可以完成quite simply
  • 我看到了这个,但我是开发新手。特别是我不知道 jQuery。如果有具体的帮助会有所帮助

标签: php javascript html


【解决方案1】:

中应该有where子句
$distquery = "SELECT DISTINCT distname FROM union_bgd ORDER  BY distname";

像这样编辑,

$distquery = "SELECT DISTINCT distname FROM union_bgd where divname=".$selected_dist." ORDER  BY distname";

【讨论】:

    猜你喜欢
    • 2012-01-04
    • 1970-01-01
    • 2017-12-17
    • 1970-01-01
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    • 2013-12-06
    • 2017-04-06
    相关资源
    最近更新 更多