Подтверждение по электронной почте с prototype.js? - PullRequest
0 голосов
/ 04 апреля 2011

У меня есть простая форма имени и электронной почты, встроенная в Ajax, PHP и mySQL.

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

Ответы [ 2 ]

2 голосов
/ 04 апреля 2011

Я думаю, что вы после (двойной) подписки. Просто чтобы дать общее представление о том, как вы можете достичь своей цели.

  • Зарегистрируйте данные пользователя в своей базе данных.
  • Сохранение уникального токена для каждого пользователя (каждое действие: новый пользователь / потерянный pw / и т. Д.)
  • Сохранить значение времени жизни токена (дата, до которой токен будет принят как действительный)
  • Использовать некоторую почтовую библиотеку для PHP ( PHPMailer )
  • Отправить приветствие (подтверждение) каждому новому пользователю, включая его уникальные токены
  • Если пользователь открывает предоставленную ссылку, вы можете установить флаг, чтобы пользователь был активен с этого момента.

Примечание. Поскольку это лишь базовая схема, я не упомянул о каких-либо проблемах безопасности.

0 голосов
/ 04 апреля 2011

Поскольку вы не предоставили нам много информации, поэтому я просто даю не совсем точный ответ .--

Сначала посмотрите в своем регистрационном коде, используйте bin2hex на username, чтобы сгенерировать код активации, потому что это гарантирует, что у каждого пользователя будет свой код активации. И используйте INSERT INTO синтаксис mysql и вставьте код активации в новый столбец с именем activation_code или, возможно, в соответствии с вашими потребностями.

Во-вторых, если регистрация прошла успешно, просто отправьте письмо на идентификатор электронной почты, который вы только что получили от пользователя, с помощью функции mail($to, $subject, $body, $headers), где для $to указан ваш электронный идентификатор пользователя.

Затем создайте страницу, просто назовите ее как activation.exec.php, где вы получите код активации от URL, URL должен быть отправлен пользователю, и не забудьте включить user id или email id по этой ссылке.

В-третьих, добавьте запрос mysql, чтобы убедиться, что идентификатор пользователя, который вы только что получили из URL, находится в вашей базе данных или нет. Затем проверьте, что код активации в базе данных аналогичен тому, который вы только что получили от URL. И в случае успеха перенаправьте его на страницу Успешная активация.

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...