Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Доброго времени суток. Сделал регистрацию и авторизацию на Ларавеле. Все работает, но есть проблема, после обновления страницы, или перехода на другую я теряю залогининового пользователя.
Мой код.
public function LogIn()
{
$Data = Input::all();
$Validator = $this::ValidateInputData($Data, 'L');
if ($Validator->fails()) {
print "Ошибка, авторизация не произведена.";
$Errors = $Validator->messages()->toArray();
return View::make('signupView')->with('Errors', $Errors);
}
else
{
if (Auth::attempt([
'username' => $Data['Login'],
'password' => $Data['Password']
],true ) )
$User = Auth::user();
else
$User = null;
if ($User instanceof \Illuminate\Auth\UserInterface) {
Auth::login($User, true);
return Redirect::to('/');
}
else {
$Alert = 'Ошибка авторизации, проверьте правильность ввода данных.';
return View::make('signupView')->with('Alert', $Alert);
}
}
}
Не в сети
Cookie ставятся? Названия полей для авторизации совпадают? В базе поле remember token есть? Конфиг менялся? Да много чего может быть...
Для начала пробуй сделать как тут https://scotch.io/tutorials/simple-and- … entication
public function doLogin()
{
// validate the info, create rules for the inputs
$rules = array(
'email' => 'required|email', // make sure the email is an actual email
'password' => 'required|alphaNum|min:3' // password can only be alphanumeric and has to be greater than 3 characters
);
// run the validation rules on the inputs from the form
$validator = Validator::make(Input::all(), $rules);
// if the validator fails, redirect back to the form
if ($validator->fails()) {
return Redirect::to('login')
->withErrors($validator) // send back all errors to the login form
->withInput(Input::except('password')); // send back the input (not the password) so that we can repopulate the form
} else {
// create our user data for the authentication
$userdata = array(
'email' => Input::get('email'),
'password' => Input::get('password')
);
// attempt to do the login
if (Auth::attempt($userdata)) {
// validation successful!
// redirect them to the secure section or whatever
// return Redirect::to('secure');
// for now we'll just echo success (even though echoing in a controller is bad)
echo 'SUCCESS!';
} else {
// validation not successful, send back to form
return Redirect::to('login');
}
}
}
Не в сети
Страницы 1