我有一个搜索表单,用户可以在其中查找他拥有的庄园(按号码或关键字搜索)。
表格中的每个产业都有一个用户ID来识别所有者。
$userID variable (from login session).
$accessLevel variable (from login session). / checks if user is admin
$req variable (keyword from form input)
SELECT esName, esID, esAddress FROM estates WHERE
(esName LIKE '$req' OR esID LIKE '$req')
AND userID='$userID'"
现在,我的问题是如何创建管理员访问权限。管理员可以检查所有现有的遗产,无论谁拥有它们。除了管理员的独立查询之外还有其他选择吗?
我对不同的数据库有7个不同的查询(取决于单选按钮选择(例如:遗产,付款等)),并且对每个数据库进行另一次查询将是一个混乱。
答案 0 :(得分:1)
$qry = "SELECT esName, esID, esAddress FROM estates WHERE
(esName LIKE '$req' OR esID LIKE '$req')" .
($accessLevel == 'admin' ? "" : " AND userID='$userID'");
答案 1 :(得分:1)
如果您正在寻找适用于管理员和普通用户的一个查询。
$admin_access = 'true'; // if user is administrator
$admin_access = 'false'; // if user is not administrator
$query = "SELECT esName, esID, esAddress FROM estates WHERE
(esName LIKE '$req' OR esID LIKE '$req')
AND (userID='$userID' OR $admin_access)";