2015-01-06 45 views
0

我有一個HTML表單與下拉選項,它將值傳遞給我在與表單相同的頁面上的php sql查詢。如果我在LIKE語句中使用這些值,但是當我嘗試使用BETWEEN發佈的值或> =它不起作用時,這將起作用。如果我嘗試使用實際值,它確實有效。有人可以建議我做錯了什麼。我已經發布了我的HTML表單和SQL查詢的PHP代碼。創建一個HTML表單來搜索SQL數據庫

HTML:

<html><form action="#" method="GET"></select> 
     <select name="MinPrice"> 
     <option value="">Min Price</option> 
     <option value="">No Min</option> 
     <option value="500">£500</option> 
     <option value="600">£600</option> 
     <option value="700">£700</option> 
     <option value="800">£800</option> 
     <option value="900">£900</option> 
     <option value="">Show All</option> 
     </select> 
     <select name="MaxPrice"> 
     <option value="">Max Price</option> 
     <option value="">No Max</option> 
     <option value="500">£500</option> 
     <option value="600">£600</option> 
     <option value="700">£700</option> 
     <option value="800">£800</option> 
     <option value="900">£900</option></select></form></html> 

PHP:

<?php 
mysql_connect("****", "****", "****"); 
mysql_select_db("****"); 
$sql = mysql_query("SELECT * FROM Product WHERE Price >= '%$_GET[MinPrice]%'"); 
echo "<h3>...Something..."; 

或者

<?php 
mysql_connect("****", "****", "****"); 
mysql_select_db("****"); 
$sql = mysql_query("SELECT * FROM Product WHERE Price BETWEEN '%$_GET[MinPrice]%' AND '%$_GET[MaxPrice]%'"); 
echo "<h3>...Something..."; 

我沒有得到任何結果回來了,但如果我用實際的數字交換中獲取值它作爲我想要。任何人對此有任何建議?

我已經盡我所知的一切努力

+2

顯示比較$ sql中的價值你表結構,你有價格價值 –

+1

你從兩個查詢中刪除'%'後你嘗試過嗎? –

+1

刪除查詢中的%符號。只有在使用LIKE時才使用這些(afaik)。 – Peter

回答

0

爲什麼行動是「#」? 如果你的PHP代碼是另一頁的行動把名字:

例如:

<form action="selectproduct.php" method="GET"> 

,或者如果PHP代碼是在HTML頁面的設置操作:

<form action="<?php $PHP_SELF?>" method="GET"> 
+0

謝謝你,是的,我的php代碼和html一樣。我會在稍後階段提出。 – RKK86

0

對不起,我可以」但你可以改變:

echo "<h3>...Something..."; 

to

echo $sql; 

var_dump($sql) 

,當你使用$ _GET和使用 「實際數字」

必須有差異:-) :-)