我想包括一個功能,可以讓我的網站的用戶按名稱或價格對搜索結果進行排序。MYSQL/PHP的 - 如何使從MySQL排序結果「排序」下拉列表
這很簡單,因爲我打算做的是通過php更改mysql查詢。
所以基本上查詢看起來是這樣的:
$searchResultQuery = "
SELECT id, name, price
FROM items
WHERE MATCH (name)
AGAINST ('{$GLOBALS['input']}' IN BOOLEAN MODE)
ORDER BY $GLOBALS['sort']
";
和HTML看起來是這樣的:
<form>
<select name="sort" id="sort" style="float: left;">
<option value="name">Name</option>
<option value="price">Price</option>
</select>
</form>
我想要做什麼,是有形式自動提交時,一個新的選擇是選擇。如在默認情況下,結果按名稱排序,但如果用戶選擇價格,那麼它將調整結果以按照價格順序顯示。如果用戶不需要點擊某種提交按鈕,就會發生這種情況。因爲我對JavaScript有着非常暗淡的認識,所以我一直在閱讀一些html5補充,並且似乎沒有什麼可以說明這一點。這可能沒有使用javascript或我不得不學習如何使用onchange
屬性?
如果有人對此有任何意見,將不勝感激,謝謝!
編輯:
這將是我所加入控制器,但我認爲這是沒有被通過的原因:
if (isset($_POST['sort']))
{
$GLOBALS['sort'] = $_POST['sort'];
}
如何將我的表格值增加全局變量?
您是否困惑Java和Javascript? – 2011-12-26 08:57:12
@Sergei Tulentsev不,沒有混淆,只是我的措辭有問題,現在已經糾正,謝謝! – 2011-12-26 10:02:00
**警告!**接受的答案是[基本上不安全,直接導致SQL注入!](https://phpdelusions.net/pdo/sql_injection_example#escaping)請參閱頂部鏈接的答案以獲得正確的解決方案 – 2017-03-03 05:50:56