私は価格とcategory_idをフォームに提出し、その結果、私に結果が表示されます。私が持っているものは以下の通りです。SQLクエリで値が空白の場合、ANDフィールド=値を無視する方法はありますか?
$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'
を無視するクエリを修正するにはどうすればよいですか?
私はこの目的のために2番目のクエリを作成すると考えましたが、他の方法がありますか?このよう
ありがとうございます。私はしかし、質問があります。 cが常に整数になる場合、mysql_real_escapeよりも(int)を使用する方が良いですか? – EnexoOnoma
@Nikolaiはい期待される値が常に整数なら、エスケープすると文字列などを送ることができますが、(int)整数を完全な整数に強制的に変換しますもしそうでなければ、ゼロを得るでしょう。 –