Size: a a a

Laravel для начинающих

2020 September 27

AB

Alexey Bubnov in Laravel для начинающих
для \Hash
источник

AB

Alexey Bubnov in Laravel для начинающих
тоесть в вашем случае:
if (Hash::check($request['sms_code'], $model->sms_code)) {
...
источник

MG

Martin German in Laravel для начинающих
^ так нельзя делать
источник

MG

Martin German in Laravel для начинающих
правильный путь подсказал PSYTRGLES
источник

P

PSYTRGLES in Laravel для начинающих
разве? я как бы тоже хотел про check написать =)
источник

AB

Alexey Bubnov in Laravel для начинающих
Martin German
правильный путь подсказал PSYTRGLES
Он же удалил даже свой ответ
источник

AB

Alexey Bubnov in Laravel для начинающих
Это вроде не про совсем авторизацию а про подтверждение SMS сода
источник

P

PSYTRGLES in Laravel для начинающих
ага, я сначал подумал, что там авторизация, а тебе хэш чекнуть
источник

MG

Martin German in Laravel для начинающих
там авторизация и хеш чекнуть, к слову auth::check не помог
источник

AB

Alexey Bubnov in Laravel для начинающих
\Hash::check
источник

P

PSYTRGLES in Laravel для начинающих
он там по итогу и юзается
источник

MG

Martin German in Laravel для начинающих
понял, спасибо
источник

P

PSYTRGLES in Laravel для начинающих
а Auth::check() - чекнет авторизирован ли юзер
источник

MG

Martin German in Laravel для начинающих
// регистрация ...
создаю пароль. сохраняю его в переменную и тдп
$data['password'] = Hash::make($password = Str::random(8));
// сохранение в бд и высылка смс
// ....

// авторизация
проверка, обе дают false
dump(Auth::attempt(['password' => $password ]));
dump(Hash::check($password, $user->first()->password));

причем в $password стоит пароль, который я получил по смс, но проверки не проходят
источник

AB

Alexey Bubnov in Laravel для начинающих
таааак
источник

AB

Alexey Bubnov in Laravel для начинающих
ПО идее это 2 экшона же???
1) Авторизируем пользователя, тоесть Auth уже прошел и все ОК
Дальше ему высылается SMS с кодом???
2) Страничка ввода СМС кода и уже его проверки - верно я понимаю?
источник

MG

Martin German in Laravel для начинающих
Alexey Bubnov
ПО идее это 2 экшона же???
1) Авторизируем пользователя, тоесть Auth уже прошел и все ОК
Дальше ему высылается SMS с кодом???
2) Страничка ввода СМС кода и уже его проверки - верно я понимаю?
я делаю так, есть страница регистрации, там 2 поля - телефон и ФИО
как только юзер вводит их, то получает смс с кодом (и с паролем), который он должен ввести в появившееся поле.
При этом создается запись с phone, fio, password
password = Hash::make($password = Str::random(8)); далее есть поле confirmed = 0
Если он смс ввел правильно то confirmed = 1
Т.е. регистрация работает и готова.

Теперь надо юзера как-то авторизовать, делаю это по телефону и паролю.
телефон и пароль есть, но не проходит сверка полученного пароля от юзера с хешем, что в БД
источник

AB

Alexey Bubnov in Laravel для начинающих
а как ты пароль отправляешь? До хеширования же?
источник

MG

Martin German in Laravel для начинающих
Alexey Bubnov
а как ты пароль отправляешь? До хеширования же?
естественно:
$data['password'] = Hash::make($password = Str::random(8));

// .......
$message = 'СМС код: ' . $data['sms_code'] . '. Пароль: ' . $password;
$this->sendSmsWithMesage($phone, $message);
источник

AB

Alexey Bubnov in Laravel для начинающих
Стоп!
источник