Laravel Логин всегда возвращает false - PullRequest
0 голосов
/ 14 октября 2018

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