2014-04-10 50 views
0

我想創建那裏的價格被拉出像數據庫的選項菜單中的選項:選項菜單與價格範圍

$query_RS_Price = sprintf("SELECT DISTINCT price FROM products WHERE Category LIKE %s AND Manufacturer = %s AND Color = %s"); 

這給我一個範圍內的值,例如501, 999,1000,1501 2000 我知道我可以使所有的價格上來,像這樣:

<?php 
       echo '<option value="">Any</option>'; 
      while ($Price = mysql_fetch_array($RS_Price)) { 
    $selected3 = $_GET['price'] == $Price['price'] ? 'selected' : ''; 
     echo '<option '.$selected3.'>' . $Price['price'] . '</option>'; 
} ?> 

但這不是我想要的。 我不想把所有這些在一個選項,但我想作一個選擇的範圍像

<select name="price" class="dropmenu"> 

       <option value="">Any</option> 
       <option value="0-500">£0-500</option> 
       <option value="500-1000">£500-1000</option> 
       <option value="1000-2000">£1000-2000</option> 
       <option value="2000">£2000&gt;</option> 
       </select> 

如果例如沒有價值0和500之間,我不希望顯示的選項。 是否僅僅顯示選項範圍? 任何幫助,歡迎

回答

0
SELECT case when price between 0 and 500 then '0-500' 
      when price between 501 and 1000 then '501-1000' 
      when price between 1001 and 2000 then '1001-2000' 
      when price > 2000 then '>2000' 
     end as price_range 
FROM products 
WHERE Category LIKE %s AND Manufacturer = %s AND Color = %s 
GROUP BY price_range 
+0

我有改變這一切卻沒有一個價格range.I的輸出輸出我喜歡它?<選擇name =「價格」類=「dropmenu」> 任何'; while($ Price = mysql_fetch_array($ RS_Price)){ $ selected3 = $ _GET ['price'] == $ Price ['price']? 'selected':''; echo''。 $ Price ['price']。 ''; }?> 這是正確的方法嗎? – Ria

+0

排序它只需要將價格更改爲price_range。感謝你的幫助 – Ria