如何在菜单上取得权限
管理员
|---------------------|------------------|
| id | name |
|---------------------|------------------|
| 1 | TESTNAME |
|---------------------|------------------|
许可
|---------------------|------------------|------------------|
| id . | admin_id | status |
|---------------------|------------------|------------------|
| 1 | 1 | member |
|---------------------|------------------|------------------|
| 2 | 1 | container |
|---------------------|------------------|------------------|
在我的html中我想检查如果status = member然后显示菜单
if($status == member){
<li>
<a href="member.php">
<span class="sidebar-mini">O</span>
<span class="sidebar-normal">member</span>
</a>
</li>
} else {
}
答案 0 :(得分:0)
here is the simple demonstration.how to set permission for particular url or menu
if (isset($_SESSION['your session variable'])) {
$qry=mysqli_query($con,"select * from permission where admin_id='" . $_SESSION['your session id'] . "'");
$data=mysqli_fetch_array($qry);
$status= $data['status'];
if($status == member){ ?>
<li>
<a href="member.php">
<span class="sidebar-mini">O</span>
<span class="sidebar-normal">member</span>
</a>
</li>
<?php } else {
}
}
答案 1 :(得分:0)
您也可以在通过简单的JOIN语句授权(登录)您的用户时执行此操作:
SELECT admin.id, admin.name, permissions.status FROM admin INNER JOIN permissions ON permissions.admin_id = admin.id WHERE admin.name = '" . $user_name . "'
其中 $ user_name 是管理表中名称的字符串表示形式,以防您按此值检索用户。您可以将其更改为:
... admin.id = (int)$user_id
如果由于某种原因您已经知道该ID。当然,使用某些SQL驱动程序或至少PHP SQLi驱动程序以及准备查询中提供的参数总是更好:mysqli.prepare。您应该始终根据预期类型转义查询中提供的变量,而始终,始终在提供这些变量时更为重要由外部用户。
因此,如果您执行该查询,那么在您的模板中,您可以拥有 $ data [&#39; status&#39;] 以及 $ data [&#39; name& #39;。] 的
我还建议更改此条件:
if($status == member){
分为:
if('member' === $status) {
建议您将字符串放在左侧,这样您就无法混淆您的变量,下一个成员是一个字符串,并且无需引号键入有时可能是错误的被解释为常数。 我还鼓励不在模板中使用查询,更好地分离你的逻辑,并检查使用模板引擎,如Twig,Smarty等,这将使你能够更多地分离你的逻辑,并在你的视图中直接停止使用PHP代码
祝你好运:)。