php - 如何根据另一个条件在下拉列表中显示 SQL 的特定值

标签 php mysql database

我需要一些帮助来解决困扰我一段时间的问题。

我有一个广告列表,其中显示不同类别的车辆 - 汽车、摩托车、卡车、船等。我有一个可以用作过滤器的下拉菜单。根据列表中的车辆,下拉值应等于车辆的类别。

例如,如果列表中有 3 辆汽车:奥迪、宝马和保时捷,以及 2 艘船:Cranchi 和 Azimut,则下拉列表应显示 5 个值:Audi、BMW、Porsche、Cranchi、Azimut。

但是,对于上面的示例,我只能在下拉列表中显示数据库中的所有汽车和船只制造商,而不仅仅是与列表条目相关的制造商。

这是我的代码,任何想法将不胜感激:

<option value="">Please Select</option>
                        <?php
                         if($all=='ALL')
                            {
                        foreach($arrVehicleType as $arrVehicleTypes){


                        $qry_makes_all  = "SELECT * FROM ".$tblprefix."makes WHERE  status ='1' AND type = '".$arrVehicleTypes."' ORDER BY title ASC";
                        $rs_makes_all   = $db->Execute($qry_makes_all);
                         while(!$rs_makes_all->EOF){

                             $sql_query_all_all     = "SELECT type FROM ".$tblprefix."vehicles WHERE user_dealer_id = '".$DealeId."' AND  make='".$rs_makes_all->fields['id']."' AND user_dealer_type = 2   AND completed_status = 1 AND  status = 1 ";     
                             $rs_results_all_all    = $db -> Execute($sql_query_all_all);
                             $TYPE = $rs_results_all_all -> fields['type'];
?>


                <option value="<?php echo $rs_makes_all->fields['id'];?>,<?php echo $rs_makes_all->fields['title']." ($vehicletext)";?>
                </option>
                <?php $rs_makes_all->MoveNext();  } }} else {
                  while(!$rs_makes->EOF){?>
                        <option value="<?php echo $rs_makes->fields['id'];?>,,<?php echo $arrVehicleType[0];?>">
                        <?php echo $rs_makes->fields['title'];?>
                        </option>

                        <?php 

                        $rs_makes->MoveNext(); } } ?>
                    </select>

最佳答案

在Mysql中使用DISTINCT。

$qry_makes_all  = "SELECT DISTINCT /* list column names */ FROM ".$tblprefix."makes WHERE  status ='1' AND type = '".$arrVehicleTypes."' ORDER BY title ASC";

这将从表中选择所有不同的值。

关于php - 如何根据另一个条件在下拉列表中显示 SQL 的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21709812/

相关文章:

php - "is_int"工作不正常?

php - 参数号无效 : parameter was not defined in {path}

c# - 如何在sql查询之间使用日期时间的最后一个条目?

MySQL : I want to create a trigger which will insert data into user access permission table based on employee table and categories table

在 VIEW 中使用的 Mysql 函数不会返回正确的结果。

php - 循环遍历 mysql 数组并将每一行打印到 <select> 中

php - 如何从数据库中循环数据,在php中用逗号分隔

php - t 语法在第 1 行的 'GROUP BY bids.item' 附近使用

mysql - AWS-RDS-MySQL-内存不足

sql - 如何通过 PostgreSQL 更新特定列的特定行以反射(reflect)另一个表中的值?