Задать вопрос
@happyman1

Востановление пароля, как сгенерировать случайную ссылку?

Есть проект с регистрацией, нужно сделать возможность восстановления пароля при переходе по ссылке из почтового ящика. При этом не передавая в get параметр email пользователя, т.к. могут быть проблемы безопасности, а просто передавать ссылку, как например при востановлении доступа на популярных сервисах, строка такого типа https://domain.com/apassword/2cg4ao-009ffe01c855d9...
Как получить уникальную строку в б.д., чтоб при восстановлении доступа можно было на неё опираться.
  • Вопрос задан
  • 178 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
@hscode
Это легко, в таблице Users при создание пользователя добавь поле varchar 255 назови его recovery_token.
В него записывай эту переменную $recovery_token = md5(uniqid(rand(), true));
это рандомная строка.
И потом по ней уже и востанавливай пароль пользователя.
Ответ написан
Комментировать
@Arik
php.net/manual/en/function.random-bytes.php
если старая php то https://github.com/paragonie/random_compat
ну или самому сгенерировать
при этом тип поля должен быть binary, а то половина отпадает + время жизни не более 20 мин или часа. лучше для этого отдельную модель/таблицу
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽