Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 31.01.2021 07:51:13

Как организовать смену Email после подтверждения?

Всем привет, я только знакомлюсь с разработкой на Laravel, и столкнулся с такой проблемой, как организовать смену email пользователя из его личного кабинета, только после подтверждения новой почты? Регистрацию с подтверждением Email я сделал, а вот как теперь таким же образом реализовать смену? При этом, если пользователь не подтвердил, то остается олд емэйл. Версия ларавел 5.8, помогите пожалуйста.

Изменено Wim91 (31.01.2021 07:52:46)

Не в сети

#2 Сегодня 09:53:58

Re: Как организовать смену Email после подтверждения?

Для реализации смены email с подтверждением в Laravel 5.8 рекомендуется не обновлять поле email в таблице users сразу. Вместо этого создайте отдельную таблицу (например, email_changes), где будут храниться user_id, new_email и уникальный случайный токен. Когда пользователь инициирует смену, вы отправляете письмо со ссылкой, содержащей этот токен, на новый адрес. При переходе по ссылке контроллер должен найти запись по токену, убедиться, что время жизни ссылки не истекло, обновить email в таблице users и затем удалить запись из временной таблицы. Такой подход гарантирует, что старая почта останется активной до момента успешной верификации новой, и предотвратит потерю доступа к аккаунту при опечатке.

Не в сети

Подвал раздела