Вот мой вопрос:Auth :: попытка не работает [Laravel]
У меня есть пользователи таблицу, которая:
имя пользователя электронный идентификатор пароль
Кроме того, модель пользователя и когда дело доходит до регистрации, все в порядке.
Теперь, когда я хочу, чтобы войти в систему, вот мой вид:
@layout('main')
@section('content')
@if(Session::has('login_errors'))
<div class='alert alert-error'>Wrong ID</div>
@endif
{{Form::open('user/login', 'POST', array('class' => 'well inline-form'))}}
{{Form::token()}}
{{Form::text('username', Input::old('username'), array('class' => 'input-large', 'placeholder' => 'email'))}}
{{Form::password('password', array('class' => 'input-large', 'placeholder' => 'Mot de passe'))}}
{{Form::submit('Login', array('class'=>'btn btn-primary'))}}
{{Form::close()}}
@endsection
А вот то, что я делаю в моем контроллер
public function action_login()
{
if(Auth::check()){return Redirect::to('user');}
if(Request::method() == 'POST')
{
$credentials = array('username' => Input::get('username'), 'password' => Input::get('password'));
if(Auth::attempt($credentials))
{
return Redirect::to('user');
}
else
{
return Redirect::to('user/login')->with_input()->with('login_errors', true);
}
}
Section::inject('title', 'Login');
return View::make('user.login');
}
Он должен работать, но это не делает ,
Ошибка заключается в следующем: когда я нажимаю кнопку входа в систему, моя форма переходит к моему контроллеру и читается. Я знаю, что мой Input :: get ('username'), Input :: get ('password') верен и зарегистрирован в db.
Проблема в том, что даже мой адрес электронной почты или пароль верны, я не могу получить Auth, и я получаю сообщение Неверный идентификатор. Я надеюсь, что было ясно ...
Вещи вы должны знать:
Я не изменил auth.php в конфигурации, поэтому имя пользователя является адрес электронной почты
Я хэш пароля, когда я подписаться с: ' пароль»=> Hash :: сделать (Input :: получить ('пароль'))
EDIT и решение
Ok, я понял это!
Прежде всего:
- Я использовал Php 5.3.6 и Hash потребность 5.3.7, по крайней мере
- После этого я понял, что в моей БД, пароль был 40 символов макс. Я чувствую себя глупо
Надеется, что это поможет кому-нити/
Вы не выбраны какие-либо маршруты? – bretterer
Мой маршрут очень прост: Route :: controller (Controller :: detect()); –