我有這個問題與PHP。我想做的事情是建立一個包含三個過濾器的搜索引擎:按標題,描述和價格搜索。 這是我的索引html。如何在php中創建搜索過濾器
<form style="text-align:center;" method="get" action="search.php">
<label>
Search
<input type="text"name="keywords" autocomplete="off">
</label>
<input type="submit" value="Search"><br>
</form>
通過使用操作方法,我打電話給search.php文件。
if(isset($_GET['keywords'])) {
$keywords = $db->escape_string($_GET['keywords']);
$query = $db->query("SELECT title, description, price FROM products WHERE title LIKE '%{$keywords}%' OR description LIKE '%{$keywords}%' OR price LIKE '%{$keywords}%'");
}
不是它結合了所有的結果之一,因爲我使用的是同一個變量的關鍵字。 現在的問題是我沒有過濾器,因爲我不知道如何創建它。也許我希望有一個下拉選擇與這三個選項:標題,描述,價格。但我不知道如何讓我的PHP代碼看看哪一個被選中。或者,也許我的想法有更好的解決方案? 我應該使用不同的變量,如關鍵字是或什麼?
感謝解決方案!我該如何保護我的注入代碼?你能給我一些關於它的信息嗎? – CaL17
@ CaL17 [我怎樣才能防止SQL注入在PHP?](https://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) – FirstOne
我猜有些東西是錯誤的這個「。$ _GET ['field']。」。這是一個語法問題或quatation標記問題。它不適合我,我的編輯表明這是不正確的 – CaL17