1. 程式人生 > >laravel5.4 關於執行刪除管理員時候被刪用戶如果當時是登陸狀態還可以操作的處理

laravel5.4 關於執行刪除管理員時候被刪用戶如果當時是登陸狀態還可以操作的處理

關於執行刪除管理員時候被刪用戶如果當時是登陸狀態還可以操作的處理

測試中發現,超級管理把普通管理或者超級管理刪除了之後,如果被刪除用戶正在登陸狀態,那麽他還可以進行操作。。那麽這樣的問題就不能在上線發生!


laravel框架 自帶的中間件操作就可以處理這樣的事情發生! 我們可以在執行刪除的時候在中間件中做對應的判斷,判斷當前session是否存在在數據表中!

前提是你的刪除功能可以正常刪除!

接下來是我登陸中間件部分加的代碼:成功的解決了被刪用戶還可以進行操作的bug

<?php
//定義登錄中間件
namespace APP\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\DB;//引入數據庫
use App\Http\Model\Login;
class AdminLogin{
    public function handle($request, Closure $next)
    {
        //echo session(‘user‘);
        if(!session(‘user‘)){
            return redirect(‘login/login‘);
        }
        //主要邏輯部分!應該不難理解吧!
        $user_name = json_decode(session(‘user‘),true)[‘user_name‘];
        $user = Login::where(‘user_name‘,$user_name)->first();
        if(!$user){
            return redirect(‘login/login‘);
        }else{
            return $next($request);
        }
      //  return $next($request);
    }

}


本文出自 “kangjunfei” 博客,轉載請與作者聯系!

laravel5.4 關於執行刪除管理員時候被刪用戶如果當時是登陸狀態還可以操作的處理