如何限制管理员使用php查看普通用户页面?

时间:2018-10-20 12:50:20

标签: php html mysql

我有一个名为game.php的用户页面,他们可以在其中更新其个人资料等。因此,当管理员登录时,他们仍然可以访问game.php,但我不希望他们这样做。我该如何预防?

我有2个不同的登录页面,1个用于普通用户(logreg.php),1个用于管理员(admin.php)

这是我的game.php代码,它们在其中限制所有用户,因此即使我是普通用户,当我应该能够访问它时,它也会将我重定向回logreg.php。

用户的状态将为“游戏玩家”-普通用户或 “管理员”-用于管理员登录。

updateDescription(desc: string, keywords: string, title: string) {
    this.titleService.setTitle(title);
    this.meta.updateTag({ name: 'description', content: desc })
    this.meta.updateTag({ name: 'keywords', content: keywords })
    this.meta.updateTag({ name: 'og:title', content: title })
    this.meta.updateTag({ name: 'og:description', content: desc })
}

提前谢谢!!!

2 个答案:

答案 0 :(得分:1)

if中,您正在检查$_SESSION["username"]['status']的值,但是在代码中,您正在设置$_SESSION["username"]$_SESSION['status']。您可能是指if读为:

if (!isset($_SESSION["username"], $_SESSION['status'])) {

检查两个$_SESSION变量是否都已设置。

答案 1 :(得分:0)

<?php
  session_start();
  ob_start();

  If (isset($_SESSION["username"]['status'] && isset($_SESSION["username"]['status']=="admin")){
        header("Location:logreg.php");
    }
?>

尝试此代码:)