私はある種の基本的なテンプレート システムを構築しており、特定のユーザー レベルがアクセスできるテンプレートの数にいくつかの制限を設けています。だから私はこのようなコードをいくつか持っています
if (is_premium($session_user_id)==true){
$userlevel = premium_level($session_user_id);
} else {
//if the user is not premium
$userlevel = 0;
}
次に、私が持っているmysqlで:
SELECT FROM `galleries` where `UserLevel` = 0 and `UserLevel` ='".$userlevel."'
したがって、ユーザーレベルが 0 よりも高いユーザーは、すべての無料ユーザー テンプレートとそのユーザー レベル テンプレートにアクセスできます。これが最善の方法であるかどうかはわかりませんが、とにかく明確であることを願っています。
どちらの場合も、クエリには 2 つの値が含まれます。最初の UserLevel` = 0 は常に 0 で、2 番目の値はユーザーレベルによって異なりますが、ユーザーレベルが 0 (フリー ユーザー) の場合、クエリは次のように実行されます。 :
SELECT FROM `galleries` where `UserLevel` = 0 and `UserLevel` =0
私が尋ねているのは、これに問題はありますか?userlevel=0 と userlevel=0 はどこですか?
条件付きクエリの作成に時間を割きたいと思います。
ありがとうございました。
更新: フィードバックの後、条件付きクエリを作成することにしました。お時間をいただきありがとうございます。現在の様子は次のとおりです。
if (is_premium($session_user_id)==true){
//Check premium accont level
$userlevel = premium_level($session_user_id);
$statement = "`galleries` where `UserLevel` = 0 OR `UserLevel` ='".$userlevel."' ";
} else {
//if the user is not premium
$userlevel = 0;
$statement = "`galleries` where `UserLevel` = 0";
}
こっちの方がいいと思います。