php - 电子邮件验证的标准方法是什么

标签 php mysql email-validation

<分区>

我目前正在从事一个大项目,客户要求一切都需要以标准的方式完美无缺,尤其是在安全方面。有一个用户注册 session ,我也必须添加电子邮件验证功能。

我在我的所有项目中都使用以下方法进行电子邮件验证。

  1. 在注册时,将数据保存到用户表中,status(状态列的值)为 0,生成的随机 code 到用于的列那。

  2. 然后使用随机code ans 用户的id 作为get 变量发送指向已注册邮件id 的链接。 例如:http://site_address.com/verification_url.php?id=1&code=abc123xyz

  3. 在验证页面上,get 变量 ($_GET['code']) 的值与保存在数据库中的随机代码进行比较,该用户具有已传递的 ID ( $_GET['id'])

  4. 如果两个代码相同,status设置为 1 并显示成功验证消息。

请告诉我是否有普遍接受的电子邮件验证方法(保证安全)。此外,我想知道我的方法的安全限制或问题,以便我可以解决这些问题。

最佳答案

我不会发送用户 ID,否则您的方法可以正常工作。将您告诉外界的用户 ID 发送给您的大部分数据库/代码设计。 创建强哈希作为代码和过期日期,你会没事的。

关于php - 电子邮件验证的标准方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23990667/

相关文章:

php - 使用 cakephp 查询不更新 Mysql 中的字段

security - 从电子邮件自动登录用户是个坏主意吗?

PHP DOM : How to get child elements by tag name in an elegant manner?

c# - 将代码转换为 C#?

php - 使用 while 循环从数据库填充数组

java - 如何在注册用户之前验证从 EditText 输入的电子邮件和密码

ruby-on-rails - 在 Rails 中验证多封电子邮件和处理错误的最佳方式是什么?

php - 需要帮助简化我的 php 表

C# 和 SQL TOP 查询

Mysql创建索引而不是外键约束