ユーザーの検索条件に応じてデータベースをクエリしようとしていますが、基準の1つは登録された性別:男性または女性です。php:CASEと複数の選択によるSQLクエリ
ただし、ユーザーは条件としてmale
female
またはanything
として送信できます。ユーザーがanything
を送信するとすべての行を選択しようとしていますが、空の結果が出ています。
はここに私の試験の一部です、それらのどれも動いていないようにみえますが、それは私はあなたが任意のフィルタに言及する必要はありません、ということです参照して何male
female
$query = "SELECT *
FROM UsersInfo
WHERE gender = CASE '$et_gender'
WHEN 'male' THEN 'male'
WHEN 'female' THEN 'female'
WHEN 'anything' THEN 'female' AND 'male'
END";
$query = "SELECT *
FROM UsersInfo
WHERE gender = CASE '$et_gender'
WHEN 'male' THEN 'male'
WHEN 'female' THEN 'female'
WHEN 'anything' THEN SELECT * FROM UsersInfo
END";
$query = "SELECT *
FROM UsersInfo
WHERE gender = CASE '$et_gender'
WHEN 'male' THEN 'male'
WHEN 'female' THEN 'female'
WHEN 'anything' THEN *
END";
WHERE句の大文字と小文字の区別の代わりにAND/ORを使用する方が一般にはるかに優れています。 – jarlh
@ jarlhありがとうございました...私は非常にエキスパートではありませんので、ケースはまさに私が必要としたように聞こえました...しかし、おそらくあなたは正しいです – codeKiller
クエリを画面に印刷してみてください。 –