15 程度のフィールドを含む検索フォームがありますが、たとえば、検索を実行するためにすべてが必要なわけではありません。
ユーザーは、「金融」で働く「ロンドン」の登録済みユーザーを検索するかもしれませんが、$availability や $salary などの他のすべてのフィールドを空白のままにすると、$_POST データは次のようになります。
$location = $_POST['location']; // Value - London
$sector = $_POST['sector']; // Value - Finance
$available = $_POST['available']; // Value - Any
$salary = $_POST['salary']; // Value - Any
他のフィールドからさらに 12 個ほどの「Any」値がある可能性があることを念頭に置いて、データベース (PHP/MySQL) をクエリして、おそらく数十のクエリをループせずに結果を返す最良の方法は何ですか。
少しわかりやすくするために、次のようなクエリが必要です(意図的な擬似コード):
SELECT * FROM table where location = 'location' AND if($availability !='Any') { available = '$available' } etc etc
このようなことは可能ですか?
または、!='Any' であるすべての $_POST フィールドの単一の文字列を作成し、文字列内のすべての単語を含む行で検索を実行できますか (理論的にはうまくいくと思います)。
これが誰かにとって意味があり、正しい方向に私を向けることができることを願っています.
PSすべての $_POST は、データベースと対話する前にエスケープされ、保護されますが、ここには含まれていません:)