作为管理php的多个用户名

作为管理php的多个用户名,php,Php,我有一个简单的php脚本,用于检查用户名“admin”,并使某些页面可供该用户使用。我想将多个用户添加到该管理员“角色”中,这可能吗?代码如下: $okFiles = array('login.php', 'signup.php', 'password_reset.php', 'auto_update_scores.php', 'getHtmlScores.php'); if (!in_array(basename($_SERVER['PHP_SELF']), $okFiles) &&a

我有一个简单的php脚本,用于检查用户名“admin”,并使某些页面可供该用户使用。我想将多个用户添加到该管理员“角色”中,这可能吗?代码如下:

$okFiles = array('login.php', 'signup.php', 'password_reset.php', 'auto_update_scores.php', 'getHtmlScores.php');
if (!in_array(basename($_SERVER['PHP_SELF']), $okFiles) && (empty($_SESSION['logged']) || $_SESSION['logged'] !== 'yes')) {
header( 'Location: login.php' ) ;
} else {
$user = $login->get_user($_SESSION['loggedInUser']);
$adminUser = $login->get_user('admin');
}

$isAdmin = 0;
if ($_SESSION['loggedInUser'] === 'admin' && $_SESSION['logged'] === 'yes') {
$isAdmin = 1;
}

所以,假设我想让用户名admin、mark和jones成为管理员。。。如何更改上述代码以实现此目的?

不一定是最好的方法,但作为实现此目的的一种非常简单的方法,您可以实现一个“admin”用户数组,然后根据该数组检查提供的用户名是否匹配。我还建议将提供的用户名转换为小写,以避免用户名区分大小写(例如,比较ADMIN和ADMIN)


最好在DB中创建一个名为“admin”的列,使用Y或N选项,并将适当的用户名设置为其中一个,然后使用WHERE子句,例如:
WHERE admin='Y'
。它可以是任何东西,但你知道它的大致意思。我想了想,但我不确定我知道的是否足够写它。我想我可以以某种方式手动将名称添加到此现有脚本中。我不会这样做,我会使用SQL方法,而不是SESSIONS方法。最好将用户权限放在DB表中;但那只是我,我不知道从哪里开始。谢谢,不用客气。但仔细想想,这是值得的。这正是我所需要和要求的,谢谢。我不得不在$isAdmin=0之前添加}括号,它工作得非常好。非常感谢,不客气!
$adminUsers = array('admin','mark','jones');
$isAdmin = 0;
if (in_array(strtolower($_SESSION['loggedInUser']), $adminUsers) && $_SESSION['logged'] === 'yes') {
    $isAdmin = 1;
}