Maison  >  Questions et réponses  >  le corps du texte

Que dois-je faire si le système backend de thinkphp6 n'effectue pas de redirection de connexion l'une après l'autre ?

class BaseAdmin extends Controller

{

public function __construct(){

// Il existe la méthode magique __construct dans Controller, nous héritons et appelons directement

parent::__construct();

// 1, public d'abord Dans la méthode, vérifiez si vous êtes connecté. Non connecté, accédez à la page de connexion.

// Vous devez créer une page et une méthode de connexion

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

// Les utilisateurs non connectés ne sont pas autorisés à accéder à

if(!$this-> _admin) {

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

exit;

}

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

/ / Jugement L'utilisateur a-t-il l'autorisation ? $this->db = new Sysdb;

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

if(!$group){

$this->request_error('Désolé, vous n'avez pas la permission') ;

}

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

// Menu d'accès actuel

// 99, request()->controller(); / 99, request() ->action(); Obtenir la méthode actuelle

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

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

/ / 99, table de menu de requête ( admin_menus), recherchez le nom du fichier et le nom de la méthode, le même menu. Remarque : Ne répétez pas le nom de la méthode et le nom du fichier du menu

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

if(!$res){

$this->request_error('Désolé, la fonction que vous avez visitée n'existe pas');

}

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

$this->request_error('Désolé, cette fonctionnalité est désactivée');

}

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

$this->request_error('Désolé, vous n'avez pas la permission');

}

}

与时赛跑与时赛跑757 Il y a quelques jours1064

répondre à tous(1)je répondrai

  • 手机用户6999042

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

    Posez et répondez à vos propres questions

    répondre
    0
  • Annulerrépondre