動的クエリ文字列を作成していますが、OR条件演算子を追加する方法に問題があります。
AND演算子にとっては、次のように簡単です。
$base_query = "SELECT * FROM `tropical_fruits` WHERE 1 "
次に、別のクエリを追加するために、次のようにします。
$query_1 = "AND `colour` = $fruit_colour;
$final_query = $base_query . $query_1;
しかし、OR演算子を追加するにはどうすればよいですか?
たとえば、単純にORを追加すると、次のようになります。
$query_1 = "OR `colour` = $fruit_colour;
...クエリは正しい結果を生成しなくなりました(つまり、クエリはテーブル内のすべてのレコードを取得します)。
だから問題は...
ユーザーが2つのOR条件を送信できることを念頭に置いて、ANDおよび/またはOR条件のいずれかを追加するのに十分な柔軟性を持たせるために、基本クエリはどうあるべきか
この質問が明確でない場合は申し訳ありません...私はそれを説明しようとするのに苦労しています!! ;-)
主なシンは、検索クエリを受け入れて結果を返す関数を書いていることです。検索関数は、次のようなクエリを受け入れることができる必要があります。
AND WHERE = そしてどこが好き またはWHERE= またはどこのように
基本的に、上記のクエリを次のような基本クエリに追加する必要があります。
$ base_query ='SELECT *FROM`'。$table_name。'` WHERE 1';
前もって感謝します!