如何在PHP中创建确认电子邮件?

Pus*_*rty 2 php email-validation

我被一个人要求创建一个PHP代码,这是一个更大的ERP软件开发项目的一部分,以便他可以测试我的技能.一旦用户通过表单注册,通过输入姓名,出生日期,电子邮件(我已经通过html完成),关于简单用户身份验证的代码.

html表单的action属性是一个php文件,它由php代码组成,用于 获取表单中的已发布输入,生成验证链接,并通过他/她已经给出的电子邮件将其发送给用户.

我有两个基本问题或问题:

  1. 如何创建此验证链接?
  2. 一旦用户点击这种类型的链接,PHP如何知道他们这样做了?

我不认为PHP中有任何事件驱动编程的概念.在这种情况下,PHP如何处理该点击并给出"构象成功消息"?是需要MySQL数据库还是有另一种更简单的方法?

Sam*_*bee 5

创建用户时,您还将为该用户生成随机字符串.这是他们的授权码.您将使用用户的数据将其存储在数据库中.

然后你将创建你的授权页面(例如,authorize.php).它将需要$ _GET参数'code',或者你想要的任何其他参数(例如authorize.php?code=theHashYouCreated).此页面的代码如下所示:

if(!empty($_GET['code']))
{
  /*
   * Get the data from the database by the provided code. 
   * If a result is returned, then remove the authorization 
   * code from the user's record. If no user is found, then 
   * return an error.
   */
}
else
{
  //No code was provided, so we should error.
}
Run Code Online (Sandbox Code Playgroud)

现在,当用户尝试登录时,您还想检查他们的授权代码是否在数据库中设置.如果是,那么他们还没有验证他们的电子邮件地址.如果不是,那么他们已经验证了它.