【问题标题】:Drop Down list to affect another Drop Down list results - using PHP Queries下拉列表影响另一个下拉列表结果 - 使用 PHP 查询
【发布时间】:2011-09-03 14:51:07
【问题描述】:

我有 2 个下拉菜单,它们都从我的数据库中获取它们的值。

2 个下拉菜单是 - 城镇和县。

显然,只有某些城镇与某些县相关。

为了捕捉到这一点,它们被这样存储在数据库中:

  1. 利兹,莫利
  2. 利兹,教堂镇
  3. 伦敦、埃塞克斯等地。

我需要强制用户首先选择县(我通过禁用/启用来完成)。但是,在选择县时,我需要使用数据库中的相关“城镇”值刷新第二个下拉框。

'Getting the town' 的当前代码是这样的:

echo "<option value='0' >Choose a Town</option>";
$town_se=$_SESSION['town'];
if(isset($county_se)){
    $locat=mysql_query("SELECT DISTINCT town_name FROM locations WHERE county_name='$county_se'");
}else{
    $locat=mysql_query("SELECT DISTINCT town_name FROM locations ");
}
while($row=mysql_fetch_assoc($locat)){ 
    $town=$row['town_name'];
    echo "<option value='$town' >$town</option>";
}

当然,这是行不通的!有没有更简单的方法来复制第一个下拉菜单的结果?

非常感谢。

【问题讨论】:

    标签: php mysql drop-down-menu


    【解决方案1】:

    我很难解码您的示例代码中发生的事情。但只是为了确保我们在同一个页面上...... PHP 是服务器端,而 HTML 是客户端。如果没有中间的东西(例如新的页面请求、javascript 或 AJAX),两者就无法交互。

    如果您呈现的数据大小合理,我可能会建议从一开始就将所有数据放入 HTML 中,但将其隐藏。也就是说,为每个县的城镇创建一个下拉列表,但在用户选择县之前将它们全部隐藏。 (需要一点 JavaScript)

    另一个常见的解决方案是在用户选择县时简单地提交(并刷新)页面,因此,您会生成一个新页面,其中包含该县的城镇的城镇下拉列表。 (需要一点 JavaScript)

    如果您想真正实现高科技,您可以使用 AJAX 并在用户选择县时将数据动态加载到第二个下拉列表中。虽然这需要你对 PHP 和 JS 有相当的了解。

    【讨论】:

      猜你喜欢
      • 2017-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-09-28
      相关资源
      最近更新 更多