php - 尝试设置全局 "$ADMIN"变量以允许或拒绝访问我的网站的管理区域

标签 php session admin

我使用的头文件包含以下代码:

<?php
    $ADMIN = False;
   if(session_id() == '') {
   // session has NOT been started
     session_start();

   }
   else
    {
         // session has been started
      }
  ?>

我必须检查管理变量状态的代码是这样的:

    while ($row2 = mysql_fetch_array($account_type)){
    if($row2['account_type'] == 'A'){
        $ADMIN = 'true';}
        else{$ADMIN = 'false';}

每次我尝试访问该网站的页面时都会收到错误:

Parse error: syntax error, unexpected '$ADMIN' (T_VARIABLE)

最佳答案

编辑为此定义新的解决方案...

如果您需要访问任何地方的某些内容,请尝试创建一个具有静态定义的管理帮助器类。

// Make sure to require this everywhere in your application
class Admin {
    private static $_is_admin = false;

    public static setAdminState($is_admin) {
        // Always store a boolean
        self::$_is_admin = $is_admin ? true : false;
    }

    public static isAdmin() {
        return self::$_is_admin;
    }
}

// Set your status like this
if ($row2['account_type'] == 'A') {
    Admin::setAdminState(true);
} else {
    Admin::setAdminState(false);
}

然后,您可以在任何地方访问它(甚至在函数和类的范围内),如下所示:

if (Admin::isAdmin()) {
    // something
}

关于php - 尝试设置全局 "$ADMIN"变量以允许或拒绝访问我的网站的管理区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16999387/

相关文章:

Django admin 只读现有字段,但如果您单击 + 添加另一个,则允许添加新的内联

php - JavaScript 与 Php MVC

php - 为什么此查询返回大小写不同的列名?

asp.net - Azure 内存中 session 状态?

java - 检测 Portlet session 关闭

web-services - 有状态的 Web 服务有多好和/或有多必要?

php - 如何根据帖子的日期和标题设置博客帖子的永久链接?

php - 拉维尔 5 : Apache php http authentication

django - 又不存在于/admin/login/---- 吗?

django - 在 Django 中测试自定义管理操作