Отправить письмо активации пользователю

Как мне сделать, чтобы проверить, существует ли электронная почта? Не могу понять, как сайты отправляют почту с уникальной ссылкой, которую пользователи нажимают, чтобы подтвердить, что он является владельцем электронной почты = /

Создайте 2 новых столбца, называемых активацией, и активируйте их и сохраните некоторую случайную строку, отправьте электронное письмо с ключом активации и обновите активированных пользователей = 1, которые соответствуют этой ссылке активации

register.php?a=activate&key=9cdfb439c7876e703e307864c9167a15 

Любые лучшие идеи?

Solutions Collecting From Web of "Отправить письмо активации пользователю"

Обычно я отправляю ссылку, содержащую идентификатор пользователя, и ключ активации. Когда они посещают мой скрипт активации, если я нахожу совпадение, я активирую их.

Когда они регистрируются, я создам, возможно, 32 символа буквенно-цифровых символов верхнего / нижнего регистра и установите его как ключ активации. На этом этапе вы можете создать поле «активировано», или вы можете предположить, что пользователь не активирован, если у него есть ключ активации.

 uid |  электронная почта |  ключ
 -------------------------------------------------- ----------
 001 |  j.smith@mysite.com |  e09141f3f5a17fed6222fc0279b9afdf
 -------------------------------------------------- ----------
 002 |  mary.tyler@abc.com | 
 -------------------------------------------------- ----------

Когда пользователь обращается к сценарию активации, просто проверьте предоставленный ключ вместе с предоставленным идентификатором, и если совпадение найдено, удалите ключ из пользовательской записи в файл (или обновите логическое поле «активировано») и откройте двери вверх ,

Если предоставленный адрес электронной почты не существует, никаких потерь. Вы можете регулярно удалять все строки с ключами через месяц бездействия.

Одной из альтернатив активационным клавишам является просто отправить сгенерированный пароль в адрес электронной почты пользователя, если пользователь входит в систему, он активирован (и, конечно же, должен иметь возможность изменить пароль на то, что он предпочитает).

Нет простого способа проверить, действительно ли письмо существует на самом деле. Есть несколько способов (pinging mailserver и т. Д.), Но никто из них не работает с настройкой каждого почтового сервера. Принуждение пользователя активировать свою учетную запись через ссылку, как вы описали, – лучший способ сделать это. Кроме того, вы можете захотеть иметь какой-то повторяющийся скрипт, например, cron-job, который удаляет неактивные элементы через определенный промежуток времени (для чего потребуется другой столбец в вашей таблице, временная метка).

Это полезно, потому что, если пользователь подписывается, но никогда не активирует свою учетную запись и не удаляет электронную почту, и вы используете свою электронную почту как идентификатор (просто пример), они никогда не смогут завершить активацию. В противном случае, если они попытаются войти в систему, вы можете просто повторно отправить электронное письмо активации на этот адрес.

Просто убедитесь, что в электронном письме вы указываете все заголовки (ответ, от и т. Д.), Поэтому ваша электронная почта не помечена как спам.