Я пытаюсь создать систему входа в систему, но она всегда возвращает неправильные данные, хотя в моей базе данных есть адрес электронной почты и пароль моего текста, я могу увидеть их в phpMyAdmin.Я знаю о существовании PHP Artisan Auth, но я должен написать один код один раз.
Я создал 3 метода в моем контроллере checkLogin (), successLogin () (возможно, я должен удалить это какэто может быть бессмысленно) и logout ().
Я твердо верю, что моя проблема находится в маршрутах.Просто напоследок, все файлы, то есть index.blade.php & login.blade.php, расположены по адресу: views/users/
.
<?php
function checkLogin(Request $request)
{
$this->validate($request, [
'email' => 'required|email',
'password' => 'required|alphaNum|min:3'
]);
$user_data = array(
'email' => $request->get('email'),
'password' => $request->get('password')
);
if (Auth::attempt($user_data)) {
return redirect('/users');
} else {
return back()->with('error', 'Wrong Login Details');
}
}
function successLogin()
{
return view('/users');
}
function logout()
{
Auth::logout();
return redirect('users.index');
}
Blade
@extends('master')
@section('content')
<style type="text/css">
.box {
width: 600px;
margin: 0 auto;
border: 1px solid #ccc;
}
</style>
<div class="container box">
<h3 align="center">Please Login To Continue</h3><br/>
@if(isset(Auth::user()->email))
<script>window.location = "/users";</script>
@endif
@if ($message = Session::get('error'))
<div class="alert alert-danger alert-block">
<button type="button" class="close" data-dismiss="alert">x</button>
<strong>{{ $message }}</strong>
</div>
@endif
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<form method="post" action="{{ url('/login/checklogin') }}">
{{ csrf_field() }}
<div class="form-group">
<label>Enter Email</label>
<input type="email" name="email" class="form-control"/>
</div>
<div class="form-group">
<label>Enter Password</label>
<input type="password" name="password" class="form-control"/>
</div>
<div class="form-group">
<input type="submit" name="login" class="btn btn-primary" value="Login"/>
</div>
</form>
</div>
@endsection
Маршруты
Route::post('/login/checklogin', 'UserController@checklogin');
Route::get('/login/successlogin', 'UserController@successlogin');
Route::get('/login/logout', 'UserController@logout');
Route::get('/login',function () {
return view('/users/login');
});