php - 如何根据另一个下拉选择来过滤下拉列表中的选项

标签 php mysql

我想根据前一个下拉列表(“type”)中选定的 ID 过滤要在第二个下拉列表(“make”)中显示的选项,而不是显示所有“make”选项。

如何捕获类型(第一个下拉列表)的 id,以便在提交表单之前相应地在 make 中显示列表?

代码如下:

mysql_select_db($database);
$query="SELECT * FROM car_make";
$result=  mysql_query($query)or die(mysql_error());

mysql_select_db($database);
$query_type="SELECT * FROM car_type";
$result_type=  mysql_query($query_type)or die(mysql_error());

<tr><td>Choose Car Type</td><td>:</td>//first dropdown (type)
      <td>
      <select name="type">
        <option value="">Please select a car Type</option>
                   <?php

        while($row_type=mysql_fetch_array($result_type))
                {
                     $carType=$row_type['carType'];
                     $carType_id=$row_type['carType_id'];                                       

        ?>                    
            <option value="<?php echo $carType_id; ?>"><?php echo $carType; ?></option>              

        <?php
        }
        ?>
      </select>
      </td>
    </tr>
    <tr><td>Choose Car Make</td><td>:</td>//second dropdown (make)
      <td>
      <select name="make">
        <option value="">Please select a car make</option>
                   <?php         

while($row=mysql_fetch_array($result))
        {
            $carMake_id=$row['carMake_id'];
            $carMake=$row['carMake'];
        ?>


            <option value="<?php echo $carMake_id; ?>"><?php echo $carMake; ?></option>


        <?php
        }
        ?>
      </select>
      </td>
    </tr>

最佳答案

您正在寻找所谓的链式选择。这是 php/ajax 的方法:

Chained Select Boxes (Country, State, City)

关于php - 如何根据另一个下拉选择来过滤下拉列表中的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24709298/

相关文章:

php - 成功登录亚马逊账户授权后,亚马逊支付出现 "AccessDenied"错误

php - 如何选择具有最新时间戳的记录

mysql - MySQL 是否会因主键值非常高而变慢?

php - 为什么我在 PHP/MySQL 中收到错误 SQLSTATE42000

php - cURL 命令行登录 (bash)

php - 如何将点击事件添加到 jstree(jQuery 插件)的异步列表?

php - php 代码之前的 javascript 警报

php - 删除在 php/MYSQL 中不起作用的查询

php - 如何使用 PHP 将文件保存到 MySQL BLOB?

c# - MySql.Data.MySqlClient.MySqlException'发生在MySql.Data.dll中