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


trying to set global "$ADMIN" variable to allow or deny access to the admin area of my site

我使用一个头文件,代码如下:

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

检查admin变量状态的代码如下:

    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
}