-
2021-03-24 10:03:00
标签:邮箱验证 登录 格式 tar 程序 body 用户名 实现 include
*文章来源:https://blog.egsec.cn/archives/623 (我的主站)
*本文将主要说明:PHP实现邮箱验证码验证功能,通过注册或登录向用户发送身份确认验证码,并通过判断输入的验证码是否正确做出登录判断。
实现邮箱验证码功能有三个步骤:
1、下载 PHPMailer 组件:https://github.com/PHPMailer/PHPMailer
2、编写随机数(验证码)函数:
3、编写调用核心组件程序:
CharSet ="UTF-8"; //设定邮件编码
$mail->SMTPDebug = 0; // 调试模式输出
$mail->isSMTP(); // 使用SMTP
$mail->Host = ‘smtp.qq.com‘; // SMTP服务器
$mail->SMTPAuth = true; // 允许 SMTP 认证
$mail->Username = ‘**********‘; // SMTP 用户名 即邮箱的用户名
$mail->Password = ‘****************‘; // SMTP 密码 部分邮箱是授权码(例如163邮箱)
$mail->SMTPSecure = ‘ssl‘; // 允许 TLS 或者ssl协议
$mail->Port = 465; // 服务器端口 25 或者465 具体要看邮箱服务器支持
$mail->setFrom(‘*********qq.com‘, ‘Mailer‘); //发件人(以QQ邮箱为例)
$mail->addAddress($Email, ‘Joe‘); // 收件人($Email可以为变量传值,也可为固定值)
//$mail->addAddress(‘ellen@example.com‘); // 可添加多个收件人
$mail->addReplyTo(‘*********@qq.com‘, ‘info‘); //回复的时候回复给哪个邮箱 建议和发件人一致
//$mail->addCC(‘cc@example.com‘); //抄送
//$mail->addBCC(‘bcc@example.com‘); //密送
//发送附件
// $mail->addAttachment(‘../xy.zip‘); // 添加附件
// $mail->addAttachment(‘../thumb-1.jpg‘, ‘new.jpg‘); // 发送附件并且重命名
$yanzhen = codestr(); //此处为调用随机验证码函数(按照自己实际函数名改写)
//Content
$mail->isHTML(true); // 是否以HTML文档格式发送 发送后客户端可直接显示对应HTML内容
$mail->Subject = ‘******身份登录验证‘;
$mail->Body = ‘
欢迎使用******
您的身份验证码是:‘.$yanzhen.‘‘ . date(‘Y-m-d H:i:s‘);
$mail->AltBody = ‘欢迎使用********,您的身份验证码是:‘.$yanzhen . date(‘Y-m-d H:i:s‘);
$mail->send();
echo ‘验证邮件发送成功,请注意查收!‘;
} catch (Exception $e) {
echo ‘邮件发送失败: ‘, $mail->ErrorInfo;
}
}
?>
完成以上三个步骤即可实现向用户发送邮箱验证码的功能。
但是,事情并没有结束,向用户发送验证码成功后,对用户提交的验证码如何判断输入的验证码是否正确呢?如果正确,达到身份确认效果,否则反之。请看下面实例:
写实例之前,为了让大家更加明确程序中的文件名以及变量的作用,我们先规定:
1、将调用核心组件程序 命名为 email.php
2、规定验证码存放的变量名为 $yanzhen
3、将 用户输入的验证码 的post表单值命名为 YanEmail
4、规定使用POST提交表单
5、规定接收POST值的页面 命名为 yanzhen.php
规定了以上规则后,下面开始实例演示:
首先是用户输入页面:
登录
邮箱验证页面
//此处的$Email为接收用户的邮箱(这儿看自己需求,可以是数据库查询,也可以是手动输入,只需要最后赋值给$Email即可)
//此处为导入email.php文件,自动向用户发送验证邮箱
//此处为用户输入的验证码
//此处为系统向用户发送的验证码(注意:这样写对系统不安全,按照自己需求更改吧),
POST表单接收页面(yanzhen.php):
到这就完成了PHP实现邮箱验证码功能的实现。其实没啥技术含量,就是可能逻辑上需要理清自己想要什么功能。
文章中如有错误,请留言指出,个人技术能力有限,希望可以帮到你。
转载请注明来源!谢谢!!!
PHP实现邮箱验证码验证功能
标签:邮箱验证 登录 格式 tar 程序 body 用户名 实现 include
更多相关内容 -
PHP使用POP3读取邮箱接收邮件的示例代码
2020-10-15 03:47:23主要介绍了PHP如何使用POP3读取邮箱接收邮件,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下 -
PHP版smtp邮件在线发送,适合于网页表单邮箱接收订单信息或者留言用
2019-05-14 15:48:41该PHP版的邮件在线发送,适合于网页填写的表单向指定邮箱中发送,内附DEMO表单,在emailconfig.php中修改你自己的SMTP帐号信息,index.php中填写一个邮箱地址,点发送,看下是否会收到邮件。邮件内容和格式调整在... -
PHP使用POP3读取邮箱接收邮件的实例解析
2021-03-31 08:03:18直接上代码:直接上代码:<?php
$array_values['host'] = "host";
$array_values['port'] = 110;
$array_values['user'] = '用户名';
$array_values['password'] = '密码';
$array_values['checkmail'] = 'xxx@xxx.xxx';
ganji_get_test_mail($array_values);
function ganji_get_test_mail($array_values)
{
$host = $array_values['host'];
$port = $array_values['port'];
$user = $array_values['user'];
$password = $array_values['password'];
$checkmail = $array_values['checkmail'];
$msg = '';
$return_msg = '';
// ini_set('memory_limit', '80M');
if (! ($sock = fsockopen(gethostbyname($host), $port, $errno, $errstr))) {
exit($errno . ': ' . $errstr);
}
set_socket_blocking($sock, true);
$command = "USER " . $user . "\r\n";
fwrite($sock, $command);
$msg = fgets($sock);
$command = "PASS " . $password . "\r\n";
fwrite($sock, $command);
$msg = fgets($sock);
$command = "stat\r\n";
fwrite($sock, $command);
$return_msg = fgets($sock);
$msg = fgets($sock);
$command = "LIST\r\n";
fwrite($sock, $command);
$all_mails = array();
while (true) {
$msg = fgets($sock);
if (! preg_match('/^\+OK/', $msg) && ! preg_match('/^\./', $msg)) {
$msg = preg_replace('/\ .*\r\n/', '', $msg);
array_push($all_mails, $msg);
}
if (preg_match('/^\./', $msg))
break;
}
// 获取邮件列表
$ganji_mails = array();
foreach ($all_mails as $item) {
fwrite($sock, "TOP $item 0\r\n");
while (true) {
$msg = fgets($sock);
// echo $msg . "
";if (preg_match('/^\./', $msg)) {
array_push($ganji_mails, $item);
break;
}
}
continue;
}
$mail_content = '';
$array_ganji_mails = array();
//逐行遍历
foreach ($ganji_mails as $item) {
fwrite($sock, "RETR $item\r\n");
while (true) {
$msg = fgets($sock);
$mail_content .= $msg;
if (preg_match('/^\./', $msg)) {
array_push($array_ganji_mails, iconv_mime_decode_headers($mail_content, 0, "UTF-8"));
$mail_content = '';
break;
}
}
}
// 直接获取第一封邮件全部信息 9999长度
fwrite($sock, "RETR 1\r\n");
$mail_contents = fread($sock, 9999); // 直接获取全部
echo "
";var_dump($mail_contents);
echo "
";$command = "QUIT\r\n";
fwrite($sock, $command);
$msg = fgets($sock);
return $mail_contents;
}
常用的POP3命令介绍 :命令参数状态描述
USERusername认可此命令与下面的pass命令若成功,将导致状态转换
PASSpassword认可
APOPName,Digest认可Digest是MD5消息摘要
STATNone处理请求服务器发回关于邮箱的统计资料,如邮件总数和总字节数
UIDL[Msg#]处理返回邮件的唯一标识符,POP3会话的每个标识符都将是唯一的
LIST[Msg#]处理返回邮件数量和每个邮件的大小
RETR[Msg#]处理返回由参数标识的邮件的全部文本
DELE[Msg#]处理服务器将由参数标识的邮件标记为删除,由quit命令执行
RSETNone处理服务器将重置所有标记为删除的邮件,用于撤消DELE命令
TOP[Msg#]处理服务器将返回由参数标识的邮件前n行内容,n必须是正整数
NOOPNone处理服务器返回一个肯定的响应,不做任何操作。
QUITNone更新退出
-
php 邮件接收代码,接收邮件处理主题和内容
2021-04-10 14:19:39$server = "{bjmail.*.com/pop3}"; //邮件服务器$mailbox = "inbox"; //收件箱$mailaccount="zhao**";//用户名$mailpasswd=" "; //密码$stream = @imap_open($server.$mailbox,$mail...//打开IMAP 连结$mail_number...$server = "{bjmail.*.com/pop3}"; //邮件服务器
$mailbox = "inbox"; //收件箱
$mailaccount="zhao**";//用户名
$mailpasswd=" "; //密码
$stream = @imap_open($server.$mailbox,$mailaccount,$mailpasswd);//打开IMAP 连结
$mail_number = imap_num_msg($stream);//信件的个数
if($mail_number < 1) { echo "No Message for $email"; }//如果信件数为0,显示信息
for($i=$mail_number;$i>=$mail_number;$i--)
{
$headers = @imap_header($stream, $i);
$mail_header= imap_headerinfo($stream, $i);//邮件头部
//var_dump ($mail_header);
$subject = $mail_header->subject;//邮件标题
$subject=decode_mime($subject);
echo $subject;
//编码为简体中文的标题的处理方法
// if(stristr($subject, "=?gb2312"))
// { //编码为简体中文的标题
// $subject=substr($subject,11);
// $subject=substr($subject,0,-2);
// $subject = base64_decode($subject);
// }
echo $from = $mail_header->fromaddress;//发件人
echo $date = $mail_header->date;//日期
$body = imap_fetchbody($stream, $i, 1);
$body = imap_base64($body);
$body = nl2br($body);
echo $body;
// $body = imap_qprint($body);
// echo $body;
// $body = imap_binary($body);
// $body = imap_base64($body);
//echo $body;
}
function decode_mime($string)
{
$pos = strpos($string,'=?');
if (!is_int($pos)) {
return $string;
}
$preceding = substr($string, 0, $pos); // save any preceding text
$search = substr($string, $pos+2); /* the mime header spec says this is the longest a single encoded Word can be */
$d1 = strpos($search, '?');
if (!is_int($d1)) {
return $string;
}
$charset = substr($string, $pos+2, $d1); //取出字符集的定义部分
$search = substr($search, $d1+1); //字符集定义以后的部分=>$search;
$d2 = strpos($search, '?');
if (!is_int($d2)) {
return $string;
}
$encoding = substr($search, 0, $d2); 两个? 之间的部分编码方式 :q 或 b
$search = substr($search, $d2+1);
$end = strpos($search, '?='); //$d2+1 与 $end 之间是编码了 的内容:=> $endcoded_text;
if (!is_int($end)) {
return $string;
}
$encoded_text = substr($search, 0, $end);
$rest = substr($string, (strlen($preceding . $charset . $encoding . $encoded_text)+6)); //+6 是前面去掉的 =????= 六个字符
switch ($encoding) {
case 'Q':
case 'q':
//$encoded_text = str_replace('_', '%20', $encoded_text);
//$encoded_text = str_replace('=', '%', $encoded_text);
//$decoded = urldecode($encoded_text);
$decoded=quoted_printable_decode($encoded_text);
if (strtolower($charset) == 'windows-1251') {
$decoded = convert_cyr_string($decoded, 'w', 'k');
}
break;
case 'B':
case 'b':
$decoded = base64_decode($encoded_text);
if (strtolower($charset) == 'windows-1251') {
$decoded = convert_cyr_string($decoded, 'w', 'k');
}
break;
default:
$decoded = '=?' . $charset . '?' . $encoding . '?' . $encoded_text . '?=';
break;
}
return $preceding . $decoded .decode_mime($rest);
//return $preceding . $decoded . $this->decode_mime($rest);
}
-
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
2020-12-19 10:36:36复制代码 代码如下: <?php header(“Content-Type: text/html; charset=UTF-8”); error_reporting(0); /** * 登陆 * $user 163用户名 * $pass 密码 **/ function login($user,$pass){ //登陆 ... -
php接收邮件种
2021-04-03 08:16:22php接收邮件类receivemail是一个专门用来接收邮件的PHP类,支持POP3和IMAP等邮件协议。可以接收邮件及邮件附件。中文乱码解决/*** decode the subject of chinese** @param string $subject* @return sting*/public ...php接收邮件类
receivemail是一个专门用来接收邮件的PHP类,支持POP3和IMAP等邮件协议。可以接收邮件及邮件附件。
中文乱码解决
/**
* decode the subject of chinese
*
* @param string $subject
* @return sting
*/
public function subjectDecode($subject) {
$beginStr = substr($subject, 0, 5);
if($beginStr == '=?ISO') {
$separator = '=?ISO-2022-JP';
$toEncoding = 'ISO-2022-JP';
} else {
$separator = '=?GB2312';
$toEncoding = 'GB2312';
}
$encode = strstr($subject, $separator);
if ($encode) {
$explodeArr = explode($separator, $subject);
$length = count($explodeArr);
$subjectArr = array();
for($i = 0; $i < $length / 2; $i++) {
$subjectArr[$i][] = $explodeArr[$i * 2];
if (@$explodeArr[$i * 2 + 1]) {
$subjectArr[$i][] = $explodeArr[$i * 2 + 1];
}
}
foreach ($subjectArr as $arr) {
$subSubject = implode($separator, $arr);
if (count($arr) == 1) {
$subSubject = $separator . $subSubject;
}
$begin = strpos($subSubject, "=?");
$end = strpos($subSubject, "?=");
$beginStr = '';
$endStr = '';
if ($end > 0) {
if ($begin > 0) {
$beginStr = substr($subSubject, 0, $begin);
}
if ((strlen($subSubject) - $end) > 2) {
$endStr = substr($subSubject, $end + 2, strlen($subSubject) - $end - 2);
}
$str = substr($subSubject, 0, $end - strlen($subSubject));
$pos = strrpos($str, "?");
$str = substr($str, $pos + 1, strlen($str) - $pos);
$subSubject = $beginStr . imap_base64($str) . $endStr;
$subSubjectArr[] = iconv ( $toEncoding, 'utf-8', $subSubject );
// mb_convert_encoding($subSubject, 'utf-8' ,'gb2312,ISO-2022-JP');
}
}
$subject = implode('', $subSubjectArr);
}
return $subject;
}
if(strtolower($sender->mailbox)!='mailer-daemon' && strtolower($sender->mailbox)!='postmaster')
{ $subject = $this->subjectDecode($mail_header->subject);
使用方法如下:
connect(); //If connection fails give error message and exit
// 读取全部信件
$tot = $obj->getTotalMails(); //Total Mails in Inbox Return integer value
echo "收到$tot封邮件::
";
for($i = $tot; $i > 0; $i--)
{
$head = $obj->getHeaders($i); // 读取获取邮件头信息,返回数组 **数组键值为 (subject,to,toOth,toNameOth,from,fromName)
echo "主题 :: ".$head['subject']."
";
echo "收件人 :: ".$head['to']."
";
echo "抄送 :: ".$head['toOth']."
";
echo "发件人 :: ".$head['from']."
";
echo "发件人名称 :: ".$head['fromName']."
";
echo "
";
echo "
*******************************************************************************************
";
echo $obj->getBody($i); // 邮件正文
$str = $obj->GetAttach($i,"./"); // 获取邮件附件,返回的文件名以逗号隔开。 例如. (mailid, Path to store file)
$ar = explode(",",$str);
foreach($ar as $key=>$value)
echo ($value == "") ? "" : "Atteched File :: " . $value . "
";
echo "
------------------------------------------------------
";
//$obj->deleteMails($i); // Delete Mail from Mail box
}
$obj->close_mailbox(); //Close Mail Box
?>
?receivemail.class.php需要imap模块支持。
imap_append : ?? ?附加字符串到指定的邮箱中。
imap_base64 : ?? ?解 base64 编码。
imap_body : ?? ?读信的内文。
imap_check : ?? ?返回邮箱信息。
imap_close : ?? ?关闭 imap 链接。
imap_createmailbox : ?? ?建立新的信箱。
imap_delete : ?? ?标记欲删除邮件。
imap_deletemailbox : ?? ?删除既有信箱。
imap_expunge : ?? ?删除已标记的邮件。
imap_fetchbody : ?? ?从信件内文取出指定部分。
imap_fetchstructure : ?? ?获取某信件的结构信息。
imap_header : ?? ?获取某信件的标头信息。
imap_headers : ?? ?获取全部信件的标头信息。
imap_listmailbox : ?? ?获取邮箱列示。
imap_listsubscribed : ?? ?获取订阅邮箱列示。
imap_mail_copy : ?? ?复制指定信件到它处邮箱。
imap_mail_move : ?? ?移动指定信件到它处邮箱。
imap_num_msg : ?? ?取得信件数。
imap_num_recent : ?? ?取得新进信件数。
imap_open : ?? ?打开 imap 链接。
imap_ping : ?? ?检查 imap 是否连接。
imap_renamemailbox : ?? ?更改邮箱名字。
imap_reopen : ?? ?重开 imap 链接。
imap_subscribe : ?? ?订阅邮箱。
imap_undelete : ?? ?取消删除邮件标记。
imap_unsubscribe : ?? ?取消订阅邮箱。
imap_qprint : ?? ?将 qp 编码转成八位。
imap_8bit : ?? ?将八位转成 qp 编码。
imap_binary : ?? ?将八位转成 base64 编码。
imap_scanmailbox : ?? ?寻找信件有无特定字符串。
imap_mailboxmsginfo : ?? ?取得目前邮箱的信息。
imap_rfc822_write_address : ?? ?电子邮件位址标准化。
imap_rfc822_parse_adrlist : ?? ?解析电子邮件位址。
imap_setflag_full : ?? ?配置信件标志。
imap_clearflag_full : ?? ?清除信件标志。
imap_sort : ?? ?将信件标头排序。
imap_fetchheader : ?? ?取得原始标头。
imap_uid : ?? ?取得信件 uid。
imap_getmailboxes : ?? ?取得全部信件详细信息。
imap_getsubscribed : ?? ?列出所有订阅邮箱。
imap_msgno : ?? ?列出 uid 的连续信件。
imap_search : ?? ?搜寻指定标准的信件。
imap_last_error : ?? ?最后的错误信息。
imap_errors : ?? ?所有的错误信息。
imap_alerts : ?? ?所有的警告信息。
imap_status : ?? ?目前的状态信息。
1 楼
hdnlove
2012-04-10
网友评论
文明上网理性发言,请遵守 新闻评论服务协议我要评论
立即提交
专题推荐
独孤九贱-php全栈开发教程
全栈 100W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
玉女心经-web前端开发教程
入门 50W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
天龙八部-实战开发教程
实战 80W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
-
PHP接收邮件类receivemail.class.php
2013-09-22 16:40:54receivemail是一个专门用来接收邮件的PHP类,支持POP3和IMAP等邮件协议。 可以接收邮件及邮件附件。 include("receivemail.class.php"); 02 // 创建一个 reciveMail 对象 03 $obj = new receiveMail('abc@abc.com'... -
php实现邮箱验证
2021-03-24 11:07:57php实现邮箱验证2020-09-30 19:49:37php实现邮箱验证的方法:首先下载phpMailer;然后解压到项目根目录下;接着需要一台邮件服务器;最后在“config.php”中配置邮箱相关的信息并创建用于发送邮件的公用方法即可。... -
PHP-收取邮件
2016-03-18 16:26:10mail里包含了Pop3类,通过这个类去实现收取邮件,自己又写了一个pop3mail这个类,去做具体的操作 -
HEQEE 直接将留言信息发送到邮箱的php源码(PHP邮件留言本开源版)
2022-03-16 14:14:37直接将留言信息发送到邮箱,方便使用。 下载后配置libs/cfg_mail.php文件,内有注释。 下载后配置libs/cfg_mail.php文件即可,基于PHPMailer 本程序仅为不懂程序的新手提供帮助。老手请路过。 发布之后,有同学反映... -
PHP邮箱注册验证码功能实现(使用PHPMailer)
2020-07-04 14:02:45PHP邮箱注册验证码功能实现前言php使用PHPMailer类进行邮件发送 前言 本文实现的功能是在网站注册账号时,发送邮箱验证码,并验证邮箱验证码是否正确。下面会对php的邮件发送,验证码制作作详细解说。 php使用... -
PHP基于SMTP/POP3/IMAP协议的邮件发送&&接收
2021-03-23 12:16:41PhpMail-SMTP-POP3-IMAP 邮件接收发送 Mail receiving and sending最近遇到一个工程需要自动发件(SMTP)收件(IMAP/POP3)功能,发现很难找到一个PHP的完整包来使用所以自己综合phpMailer,PhpImap,csdn博客等各开源... -
php通过IMAP收取各个文件夹的邮件(附代码)
2022-02-22 17:37:50已实现对于Gmail,qq,qq企业邮箱,阿里企业邮箱,outlook,hotmail的指定文件夹来拉取邮件内容,内容截图,附件等功能 ! 什么是IMAP,POP3,IMAP协议 php获取收件箱,发件箱,垃圾箱,各种自定义分类 php 解析... -
PHP制作用户注册系统的详细代码
2021-03-22 22:05:11本篇文章主要介绍PHP制作用户注册系统的详细代码,感兴趣的朋友参考下,希望对大家有所帮助。用户注册系统写一个index.php页面,有用户名和密码表单,post提交到check.php,输出用户名和"用户名+密码"的md5值本地... -
PHP使用QQ邮箱发送邮件
2021-10-17 19:15:01QQ邮箱需要开启stmp,phpstudy需要开启ssl权限 <?php require_once("./PHPMailer/src/class.phpmailer.php"); //PHPMailer路径得正确 require_once("./PHPMailer/src/class.smtp.php"); //use ... -
php imap接收qq邮件的问题
2021-04-30 02:14:34写一个接收邮件的代码,提示无法连接,qq邮箱已开启imap,下面贴上代码,麻烦各位帮忙看看?$host = '{imap.qq.com:993/imap/ssl}INBOX';$user = '*****';$pass = '*****';$inbox = imap_open($host, $user, $pass)... -
轻松将简单的asp代码转换为php代码
2021-04-29 09:29:17随着php发展的迅速,asp使用者的减少也成了必然,而很多人也不愿意使用asp.net,于是,windows系统服务器也越来越少,linux服务器越来越多,有的时候,不得不将原来的asp程序改为php程序。对 于简单的、单页面的asp... -
phpmailer发送邮件(QQ企业邮箱和163邮箱)
2020-05-28 15:32:54注意:使用个人qq邮箱发送邮箱会被腾讯拦截发送失败 第一:163邮箱配置 1、登录163邮箱:https://email.163.com/ 2、在邮箱的设置中开启SMTP服务(设置->POP3/SMTP/IMAP->开启服务),同时生成授权密码(发送... -
用phpmailer类开发邮件发送,执行成功,但接收不到邮件
2021-04-10 10:52:25邮件发送过程中,错误可能有很多,文件未包裹的空白...这是我之前测试通过的代码:function sendMail($address,$title,$content){require("./PHPMailer/class.phpmailer.php");$mail = new PHPMailer();$mail->I... -
PHP GET方法传中文参数,PHP接收不到
2021-03-22 20:03:16http://127.0.0.1/index.php?admin&q=module/user/list&site_id=50&a=userinfo&realname=%D2%FC%BD%A8%C0%A4LINUX 服务器下,$data['realname']=$_GET['realname'];,该方法获得不了realname参数,... -
php接收post数据并写入mysql问题
2021-01-19 03:44:58求专家解答:php如何接收远程post过来的txt文本内容并同时写入mysql数据库呢?求完整代码!合适可加分!txt文本内容字段格式:学生id、学生名字、学生邮箱、学生地址回复讨论(解决方案)数据表:CREATE TABLE `... -
PHPMailer 发送163网易企业邮箱和个人邮箱, 163邮箱可能无法发送gmail邮箱,可使用qq邮箱解决问题
2021-06-12 09:51:45PHPMailer 发送163网易企业邮箱和个人邮箱 主要是端口问题 -
php实现短信验证(阿里云通信)和邮箱验证(phpmailer)
2017-07-18 21:27:49邮箱验证 教程: http://blog.csdn.net/baidu_30000217/article/details/51550259 教程中说的已经很清楚了,我是在tp5框架中使用的,在这补充几点: 如果你有composer,直接使用命令 composer ... -
在部署到阿里云服务器上的Maven+SpringMVC项目中实现邮箱接收验证码验证功能的方法
2020-05-17 17:17:27文章首发地址:https://www.ciyintang.vip/build/index.php/archives/101/ 最近个人开发项目需要做一个找回密码功能,但鉴于成本,不考虑手机验证码,这里记录一下通过邮箱获取验证码来验证的开发过程 首先要实现...