我通過表單提交價格和category_id,然後查詢顯示結果。我有下面這個。如何在SQL查詢中的值爲空時忽略AND field =值?
$s = mysql_real_escape_string($_GET["s"]);
$c = mysql_real_escape_string($_GET["c"]);
SELECT COUNT(id) FROM products WHERE price <= '$s' AND category_id = '$c'
當用戶沒有選擇任何類別,並且它的值是空白時,什麼也沒有顯示。我如何解決這個查詢,如果$c
沒有任何值,忽略AND category_id = '$c'
?
我想爲此創建第二個查詢,但是有沒有其他方法?
感謝您的支持。但我有個問題。當c總是一個整數時,(int)比mysql_real_escape更好用嗎? – EnexoOnoma
@Nikolai是的我相信如果期望的值總是整數,那麼最好使用'(int)',因爲轉義會允許發送字符串等,但(int)強制轉換爲整數,如果它是一個整數,完美如果不是,你會得到一個零。 –