验证电子邮件并更新 MySQL 数据库列

Verify Email and Update MySQL DB Column

注册后需要帮助为我的站点创建 verify.php / confirm.php。电子邮件已经发送到用户的电子邮件地址,并附有确认 link。我需要 link 像这样工作:

单击 link 后,用户将被定向到我们的网站,并会回显一条简单的消息并更新我们数据库中的某个列,该列将声明用户已被验证为未验证用户。

提前致谢!

我会这样做:

  1. 有一个用户 table 至少具有以下列:用户名 (varchar)、vrified (bool) 和 token(varchar)。
  2. 当用户注册时,已验证列将为 0(未验证)并生成一个随机令牌并将其与您请求的所有其他信息一起插入。我不会继续如何去做,因为他们在互联网上有很多关于如何生成随机令牌的教程。
  3. 完成将新用户插入数据库后,您需要发送带有确认信息的电子邮件 link,此 link 可能包含用户。示例:www.mysite.com/verify.php?email=USERS_EMAIL&token=GENERATED_TOKEN.
  4. 电子邮件发送后,在 verify.php 您需要检查数据库中是否存在该用户并更新该用户。

示例查询:

<?php
    $checkUserExists = "SELECT COUNT(username) FROM users WHERE email = USERS_EMAIL"; //This should return a 1 if the user exists.

    $updateUser = "UPDATE users SET verified = 1 WHERE email = USERS_EMAIL AND token = GENERATED_TOKEN"; //Update the user if he exists.
?>
  1. 如果用户不存在或令牌不正确,您可以发送错误消息。否则表明用户已正确更新。

希望这能帮助您解决这个问题。请编写您自己的代码或 post 写出您尝试过的代码,正如评论中所说,我们非常愿意提供帮助,但我们不会完成您必须做的所有工作。