首頁  >  問答  >  主體

thinkphp6 後台系統未陸續進行登陸重定向怎麼操作?

class BaseAdmin extends Controller

{

# public function __construct(){

// Controller 裡有__construct魔術方法,我們直接繼承呼叫

parent::__construct();

// 1,先公用方法裡的看是否登入。未登錄,去登入頁面。

// 就需要建立登入頁面和方法

$this->_admin = session('admin');

// 未登入的使用者不允許訪問

if(!$this->_admin){

header('Location: /admins/Account/login');

exit;

}

$this->assign('admin',$this->_admin);

// 判斷使用者是否有權限

$this-> ;db = new Sysdb;

$group = $this->db->table('admin_groups')->where(array('gid'=>$this->_admin[ 'gid']))->item();

if(!$group){

$this->request_error('對不起,您沒有權限');

}

$rights = json_decode($group['rights']);

// 目前存取功能表

// 99,request()- >controller(); 取得目前檔案

// 99,request()->action();  取得目前方法

$controller = request()->controller() ;

$action = request()->action();

// 99,查詢選單表(admin_menus),找到檔案名稱和方法名,相同的那個選單。注意:選單的方法名稱和檔案名,不要重複

$res = $this->db->table('admin_menus')->where(array('controller'=>$controller ,'method'=>$action))->item();

if(!$res){

$this->request_error('對不起,您訪問的功能不存在');

}

if($res['status']==1){

$this->request_error('對不起,該功能已禁止使用');

}

if(!in_array($res['mid'],$rights)){

$this->request_error ('對不起,您沒有權限');

}

}

#
与时赛跑与时赛跑807 天前1138

全部回覆(1)我來回復

  • 手机用户6999042

    手机用户69990422022-08-29 09:24:33

    自問自答

    回覆
    0
  • 取消回覆