Browse Source

6-12使用base处理登陆流

Home 5 years ago
parent
commit
9168ac36a3

+ 46 - 0
app/admin/controller/AdminBase.php

@@ -0,0 +1,46 @@
+<?php
+/**
+ * Created by PhpStorm
+ * User:林志杰
+ * Email:[email protected]
+ * Motto:纵有疾风起,人生不言弃!
+ * Time:2020/1/3 23:30
+ */
+
+namespace app\admin\controller;
+
+
+use app\BaseController;
+use think\exception\HttpResponseException;
+
+class AdminBase extends BaseController
+{
+    public $adminUser = null;
+
+    public function initialize()
+    {
+        parent::initialize();
+        // 判断是否登录
+        if (!$this->isLogin()) {
+            return $this->redirect(url('login/index'), 302);
+        }
+    }
+
+    /**
+     * 判断是否登录
+     * @return bool
+     */
+    public function isLogin()
+    {
+        $this->adminUser = session(config('admin.session_admin'));
+        if (empty($this->adminUser)) {
+            return false;
+        }
+        return true;
+    }
+
+    public function redirect(...$args)
+    {
+        throw new HttpResponseException(redirect(...$args));
+    }
+}

+ 1 - 2
app/admin/controller/Index.php

@@ -8,11 +8,10 @@
 
 
 namespace app\admin\controller;
 namespace app\admin\controller;
 
 
-use app\BaseController;
 use think\facade\View;
 use think\facade\View;
 
 
 
 
-class Index extends BaseController
+class Index extends AdminBase
 {
 {
     public function index()
     public function index()
     {
     {

+ 8 - 2
app/admin/controller/Login.php

@@ -8,13 +8,19 @@
 
 
 namespace app\admin\controller;
 namespace app\admin\controller;
 
 
-use app\BaseController;
 use app\common\model\mysql\AdminUser;
 use app\common\model\mysql\AdminUser;
 use think\facade\View;
 use think\facade\View;
 
 
 
 
-class Login extends BaseController
+class Login extends AdminBase
 {
 {
+    public function initialize()
+    {
+        if ($this->isLogin()) {
+            return $this->redirect(url('index/index'),302);
+        }
+    }
+
     public function index()
     public function index()
     {
     {
         return View::fetch();
         return View::fetch();

+ 22 - 0
app/admin/controller/Logout.php

@@ -0,0 +1,22 @@
+<?php
+/**
+ * Created by PhpStorm
+ * User:林志杰
+ * Email:[email protected]
+ * Motto:纵有疾风起,人生不言弃!
+ * Time:2020/1/4 0:08
+ */
+
+namespace app\admin\controller;
+
+
+class Logout extends AdminBase
+{
+    public function index()
+    {
+        // 清除session
+        session(config('admin.session_admin'),null);
+        // 执行跳转
+        return redirect('login/index');
+    }
+}

+ 1 - 1
app/admin/view/index/index.html

@@ -94,7 +94,7 @@
 
 
         $('.login-out').on("click", function () {
         $('.login-out').on("click", function () {
             layer.msg('退出登录成功', function () {
             layer.msg('退出登录成功', function () {
-                window.location = 'page/login.html';
+                window.location = '/admin/logout/index';
             });
             });
         });
         });
     });
     });

+ 1 - 1
app/admin/view/login/index.html

@@ -37,7 +37,7 @@
             </div>
             </div>
             <div>
             <div>
                 <i class="layui-icon layui-icon-password admin-icon"></i>
                 <i class="layui-icon layui-icon-password admin-icon"></i>
-                <input type="password" name="password" placeholder="请输入密码" autocomplete="off" class="layui-input admin-input" value="123456">
+                <input type="password" name="password" placeholder="请输入密码" autocomplete="off" class="layui-input admin-input" value="admin">
             </div>
             </div>
             <div>
             <div>
                 <input type="text" name="captcha" placeholder="请输入验证码" autocomplete="off" class="layui-input admin-input admin-input-verify input-val" value="">
                 <input type="text" name="captcha" placeholder="请输入验证码" autocomplete="off" class="layui-input admin-input admin-input-verify input-val" value="">