По сути, мы не хотим добавлять поля в таблицу, которые используются только один раз, поэтому мы будем повторно использовать уже имеющиеся поля.
Несколько лет назад я создал систему активации, где создал "guid".msgstr "ключ для ввода в поле пароля (для сохранения номеров полей в базе данных).Я создал ключ, связав несколько случайных чисел, дату и время.Обычный ключ GUID также должен помочь.
При создании новой учетной записи поле LastLogin будет пустым (NULL), поскольку пользователь еще не вошел в систему.Я использовал это, чтобы указать, что поле пароля содержит ключ вместо пароля.
Письмо, которое было отправлено, содержало ссылку на страницу подтверждения, где пользователь должен был установить новый пароль, поэтому перезаписал "ключ "и логин (установка последней даты).Правильный аккаунт для обновления, конечно же, был найден с ключом в почтовой ссылке, совпадающим с ключом в поле пароля.
<a href="www.MyDomain.com/confirm.php?key=65351368571357316687341763">Confirm</a>
Чтобы еще больше оживить его, я использовал CreateDate, чтобы убедиться, что ссылка для регистрациине истек.Если пользователь попытался использовать ссылку через 48 часов после даты создания, срок действия учетной записи истек.Я мог бы использовать дату и время в ключе, чтобы проверить это, но тогда пользователь потенциально мог бы ввести другую дату и время.