<?php
namespaceApp\Http\Middleware;useClosure;useIlluminate\Http\Request;useSymfony\Component\HttpFoundation\Response;useIlluminate\Support\Facades\Auth;classRoleMiddleware{/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/publicfunction handle(Request $request,Closure $next,...$roles):Response{if(!Auth::check()){// إذا لم يكن المستخدم مسجل دخولreturn redirect()->route('login');}
$user =Auth::user();if(!in_array($user->role, $roles)){
abort(403,'غير مسموح لك بالدخول');}return $next($request);}}
<?php
namespaceApp\Providers;useIlluminate\Support\Facades\Route;useIlluminate\Foundation\Support\Providers\RouteServiceProvider asServiceProvider;classRouteServiceProviderextendsServiceProvider{/**
* هذا هو المكان الذي يذهب إليه المستخدم بعد تسجيل الدخول
*/publicconst HOME ='/index';/**
* تسجيل جميع Routes هنا
*/publicfunction boot():void{
$this->routes(function(){Route::middleware('web')->group(base_path('routes/web.php'));Route::prefix('api')->middleware('api')->group(base_path('routes/api.php'));});}}
السؤال
ايمن ميلاد
السلام عليكم بعد تسجيل دخول لا يذهب مستخدم لصفحة index ما حل مشكلة
5 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.