Tasays

email 验证

#php email邮箱验证功能的实现

第一次更新博客 有点紧张,O(∩_∩)O哈哈哈~。

我们要实现的功能是用户点击注册时发送验证链接到指定邮箱,用户点击链接激活邮箱!

###准备工具

  • phpmailer

数据库结构


一、下载phpmailer 将其配置到你的项目中


二、我们需要在我们项目中将phpmailer的sendMail方法写入到我们的公共函数部分方便后面调用。

function sendMail($to, $title, $content){
require_once('./Plug/phpmailer/class.phpmailer.php');
$mail = new PHPMailer();
// 设置为要发邮件
$mail->IsSMTP();
// 是否允许发送HTML代码做为邮件的内容
$mail->IsHTML(TRUE);
$mail->CharSet='UTF-8';
// 是否需要身份验证
$mail->SMTPAuth=TRUE;
/*  邮件服务器上的账号是什么 -> 到163注册一个账号即可 */
$mail->From="qingchengsnow@sina.cn";
$mail->FromName="qingchengsnow";
$mail->Host="smtp.sina.cn";  //发送邮件的服务协议地址
$mail->Username="qingchengsnow";
$mail->Password="gaobieme96";
// 发邮件端口号默认25
$mail->Port = 25;
// 收件人
$mail->AddAddress($to);
// 邮件标题
$mail->Subject=$title;
// 邮件内容
$mail->Body=$content;
return($mail->Send());

}

以上内容我们只需要修改如下图所示内容


三、当用户点击注册时,我们的主要逻辑如下:

'code'=>md5(uniqid()),//获取随机数

$url=SITEURL.'index.php/Home/Ajax/chekemail/id/'.$id.'/code/'.$obj['userinfo']['code'];  //生成邮箱激活链接

sendMail(I('email'),'Tasays注册信息','亲爱的'.$obj['username'].'欢迎注册赵军海的个人blog     点击链接激活email    '.$url);
 //调用phpmailer的sendMail

这样我们的验证接连就会发送到用户邮箱了.
具体实现如下图


看看我们有没有收到邮箱验证信息呢?


下面我们要开始实现点击验证咯 非常简单哦~~~

我们只需要根据链接传递进来的ID和code查询该用户code是否存,存在的话清空验证码,修改ver状态为1(已验证)即可。
贴上代码