Пользователи Laravel не могут войти в систему, и только администраторы могут войти в систему

в laravel я могу войти в систему с учетными записями администратора без проблем, но когда я вхожу в систему с любой учетной записью пользователя, он не входит в систему и не выдает никаких ошибок, только обновляется страница входа, и это без единой ошибки, да, я проверил Chrome inspect и HttpRequest и ничего бывает, также проверьте базу данных MySQL, в ней нет ничего плохого и не выдает ошибок.

LoginController

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

class LoginController extends Controller
{
    /*
    |--------------------------------------------------------------------------
    | Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles authenticating users for the application and
    | redirecting them to your home screen. The controller uses a trait
    | to conveniently provide its functionality to your applications.
    |
    */

    use AuthenticatesUsers;

    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = '/home';

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }
}

RedirectIfAuthenticated

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Auth;

class RedirectIfAuthenticated
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @param  string|null  $guard
     * @return mixed
     */
    public function handle($request, Closure $next, $guard = null)
    {
        if (Auth::guard($guard)->check()) {
            return redirect('/home');
        }

        return $next($request);
    }
}

это другой LoginController

class LoginController расширяет Controller {

private $Administrator;

function __construct(Administrator $administrator) {
    $this->Administrator = $administrator;
}

public function index(){
    if (Auth::check()) return redirect('/dashboard');

    return view('index.login');
}

public function login(Request $request){

    if (Auth::check()) redirect('/dashboard');

    $Username = $request->input('username');
    $Password = $request->input('password');

    $Admin = $this->Administrator->checkAuthenticate($Username,$Password);

    if ($Admin){
        Auth::loginUsingId($Admin->id, true);
        return redirect('/dashboard');
    }

    return redirect('/login');
}

public function logout(){

    if (Auth::check()){
        Auth::logout();
    }

    return redirect('/login');
}

}

Отлаживал ли контроллер в вашем контроллере, где он запрашивал в первую очередь?

Niklesh Raut 07.09.2018 20:26

Да и ничего не вышло ....

MetalSaint 07.09.2018 20:27

поделитесь кодом, например, вашим маршрутом и промежуточным программным обеспечением, если вы его используете?

Niklesh Raut 07.09.2018 20:27

пожалуйста, проверьте сообщение еще раз, я отредактировал коды для входа в систему и промежуточного программного обеспечения

MetalSaint 07.09.2018 20:29

какая разница между админом и другим пользователем?

Niklesh Raut 07.09.2018 20:40

это школьный проект, вход для учащихся, вход для учителей и менеджеров, но все они не будут входить в систему, кроме администраторов

MetalSaint 07.09.2018 20:42

Проверьте сообщение еще раз. Я разместил еще один контроллер входа в систему, который содержит логин администратора.

MetalSaint 07.09.2018 20:44

вы не вызывали какой-либо метод, подобный attemp, для другого пользователя.

Niklesh Raut 07.09.2018 21:10

что именно реализовать? а вы можете показать мне пример?

MetalSaint 07.09.2018 21:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
9
133
1

Ответы 1

if (Auth::check()) redirect('/dashboard');

Это единственная проверка аутентификации, которую прошел бы обычный пользователь, и вы не возвращаете перенаправление, поэтому обычные пользователи продолжают выполнение остальной части функции, где их проверяют, чтобы увидеть, являются ли они администратором, чего они не делают. т.

Другие вопросы по теме