в 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');
}
}
Да и ничего не вышло ....
поделитесь кодом, например, вашим маршрутом и промежуточным программным обеспечением, если вы его используете?
пожалуйста, проверьте сообщение еще раз, я отредактировал коды для входа в систему и промежуточного программного обеспечения
какая разница между админом и другим пользователем?
это школьный проект, вход для учащихся, вход для учителей и менеджеров, но все они не будут входить в систему, кроме администраторов
Проверьте сообщение еще раз. Я разместил еще один контроллер входа в систему, который содержит логин администратора.
вы не вызывали какой-либо метод, подобный attemp, для другого пользователя.
что именно реализовать? а вы можете показать мне пример?






if (Auth::check()) redirect('/dashboard');
Это единственная проверка аутентификации, которую прошел бы обычный пользователь, и вы не возвращаете перенаправление, поэтому обычные пользователи продолжают выполнение остальной части функции, где их проверяют, чтобы увидеть, являются ли они администратором, чего они не делают. т.
Отлаживал ли контроллер в вашем контроллере, где он запрашивал в первую очередь?