3

我有这个简单的 PHP 代码:

 <?php
 $con = mysql_connect("localhost","root","");
 if (!$con)
 {
     die('Could not connect: ' . mysql_error());
 }
 mysql_select_db("boxcar", $con);
 echo "<form>";
 echo "<select>";
 echo "<option>--Select Brand--</option>";
 $result = mysql_query("SELECT * FROM cars");   
 while($row = mysql_fetch_array($result))
 {  
     echo "<option value=".$row['Brand'].">".$row["Brand"]."</option>";
 }
 echo "</select><br/><br/>";
 echo "<input type='button' name='submit' value='Search'/>"
 echo "</form>";
 mysql_close($con);
 ?> 

我是这方面的新手,只是试图通过使用下拉菜单为各种车型构建高级搜索功能。我只想让每个汽车品牌名称作为父类别仅在下拉列表中显示一次。我目前显示重复的品牌名称,因为我有不同的汽车型号具有相同的品牌名称。


除此之外,我希望车型的第二个下拉菜单仅显示与所选父类别(汽车品牌)相对应的车型列表,并且不显示数据库中的所有车型。

我目前有此代码,汽车型号下拉列表显示数据库中的所有型号:

//--------Get Car Brands----------
$result = mysql_query("SELECT DISTINCT cars.brand FROM cars ORDER BY brand ASC");
while($row=mysql_fetch_array($result)){
echo "<option value=".$row['brand'].">".$row["brand"]."</option>";}
echo "</select>&nbsp;&nbsp;<select class='model'>";

//--------Get Car Models----------
echo "<option>--Select Model--</option>";
$result = mysql_query("SELECT DISTINCT cars.model FROM cars ORDER BY model ASC");
while($row=mysql_fetch_array($result)){
echo "<option value=".$row['model'].">".$row["model"]."</option>";}
echo "</select><br/><br/>";
4

2 回答 2

1

尝试使用

SELECT * FROM car GROUP BY car.Brand

或者

SELECT DISTINCT car.Brand FROM car;

于 2012-12-06T05:49:03.640 回答
0

提尔这个

SELECT DISTINCT Brand FROM cars

这将从汽车表中删除重复的品牌

于 2012-12-06T05:46:49.930 回答