php - PHP 中的服务器端级联下拉菜单

标签 php mysql html variables drop-down-menu

由于我在第一个下拉列表中只有一个值,因此我尝试在 PHP 中创建一个级联下拉列表,以在页面加载时填充第二个下拉列表。

我的数据库有一个名为“nights”的表,其中包含名为“city”、“name”和“day”的字段。

为了填充我正在使用的第一个盒子 SELECT DISTINCT cities from nights等等,效果很好。

要填充第二个框,我需要类似 SELECT name WHERE city = $city 的内容- 我的问题是我不知道如何设置 $city (即 <select> 标签的名称)。我无法使用$_POST['city']因为此时表单尚未发送。

有什么想法吗?

最佳答案

如果您希望这是动态的(即在用户更改下拉列表后),您将必须使用 javascript 首先查询 PHP 页面(可能使用 jQuery get ),然后相应地调整下拉列表。网上有很多这方面的教程。

如果您只想填充初始页面数据,您可以从查询中选择第一个城市并将选项设置为选定状态,然后在下一个查询中使用该城市。

类似于:

$first = True;
while($row = mysql_fetch_array($result))
{
    echo "<option" . (($first) ? " selected" : "") . ">" . $row['city'] . "</option>";
    if($first) 
    {
        $first = !$first;
        $city = $row['city'];
    }
}
//now do stuff with with $city

关于php - PHP 中的服务器端级联下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10968095/

相关文章:

php - 'Username' 中的未知列 'where clause'

mysql - Symfony 约束以防止在重叠时间范围内重复

HTML/CSS 渲染问题

php - 如何根据单元格值更改 php 中的单元格表颜色?

php - 如何在php中搜索mysql中的多个单词

javascript - 允许我的(!)站点与 Iframe 通信?

Php 获取当前用户的 id 不起作用

php - 为什么搜索会抛出对未定义错误方法 stmt::fetch_row() 的调用?

javascript - 在 JavaScript/jQuery 中使用 Canvas 显示图像

mysql - 一种子类型的 SQL 具体与类表继承查询速度