我正在尝试为我的网站添加一些安全性,该网站有一个管理面板和一个用户页面。到目前为止,我的安全性有一个代码,如果用户试图通过url访问页面,它会将用户发送回登录页面。然而,仍然存在一个问题。如果我以用户身份登录,用户可以访问管理面板。这不应该发生,因为它是一个用户而不是管理员。
这是我到目前为止的代码:
<?php
session_start();
if (!$_SESSION['username']) {
header("Location: login.php");
}
有人能告诉我如何实现一段限制用户访问管理面板的代码吗。
如果用户是标准用户或系统管理员,则在您的帐户表上创建一个Access列。然后在php代码中将访问存储在会话变量中。
if($_SESSION['access']=='admin'){
header("Location: admin-panel.php");
}else{
header("Location: somewhereelse.php");
}
将标志/权限/角色添加到用户表中,然后检查当前登录的用户是否有权访问页面。
一个简单的方法是示例:
admin_page.php所以我们假设用户只能访问admin
然后在你的后端,你可以通过这种方式检查权限
if($user->role != "admin")
{
// return a message here or redirect them to some error page
}