您好,登錄后才能下訂單哦!
測試中發現,超級管理把普通管理或者超級管理刪除了之后,如果被刪除用戶正在登陸狀態,那么他還可以進行操作。。那么這樣的問題就不能在上線發生!
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); } }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。