0

我要设计一个系统。系统有 3 种用户类型。管理员、经理、开发人员。应用程序包含 100 个 php UI 页面。

  1. 数据库表是这样的(页面、管理员、经理、开发人员)。page 是页面名称,admin、manager、developer 是布尔字段。如果特定字段为 1 或 true 角色具有访问权限。
  2. 现在我需要将数据库与所有 100 页同步。我知道登录用户属于哪个角色。但我不知道如何传递页面并将其与表匹配以检查特定用户是否具有访问权限。

我的计划是把 checkpermission($_SERVER['PHP_SELF'], $role); 到每一页。我应该如何正确地做到这一点?如果我把这一行放到 header.php 中可以吗?会是糟糕的设计吗?

我主要关心的是可扩展性。他想在不做太多改动的情况下插入另一个站点。我们也想给一个页面。管理员可以使用该页面来授予、删除权限。将子目录添加到权限树。

4

1 回答 1

0
$ROLID = $_SESSION['ROLID'];
if($ROLID == 2 || $ROLID == 3) header('Location: 'www.foo.com/home.php');

所以管理员的角色 ID 为 1,这使他们可以访问任何页面。如果角色 ID 为 2 或 3 的用户(经理或开发人员),他们将被重定向到主页。

将此代码放在页面顶部。

于 2014-01-15T18:31:53.937 回答