完成前端用户注册
This commit is contained in:
@@ -8,6 +8,8 @@ use think\facade\View;
|
||||
use think\facade\Request;
|
||||
use think\facade\Db;
|
||||
use app\service\VisitStatsService;
|
||||
use PHPMailer\PHPMailer\PHPMailer;
|
||||
use app\index\model\MailConfig;
|
||||
|
||||
/**
|
||||
* 前台控制器基础类
|
||||
@@ -144,4 +146,76 @@ abstract class BaseController
|
||||
'wait' => $wait
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
protected function sendEmail($to, $content, $title)
|
||||
{
|
||||
// 获取邮件配置
|
||||
$mailConfig = MailConfig::where('id', 1)->find();
|
||||
if (!$mailConfig) {
|
||||
return '邮件配置不存在';
|
||||
}
|
||||
|
||||
//实例化PHPMailer核心类
|
||||
$mail = new PHPMailer();
|
||||
|
||||
//是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式
|
||||
$mail->SMTPDebug = 0;
|
||||
|
||||
//使用smtp鉴权方式发送邮件
|
||||
$mail->isSMTP();
|
||||
|
||||
//smtp需要鉴权 这个必须是true
|
||||
$mail->SMTPAuth = true;
|
||||
|
||||
//链接qq域名邮箱的服务器地址
|
||||
$mail->Host = $mailConfig['smtp_host'];
|
||||
|
||||
//设置使用ssl加密方式登录鉴权
|
||||
$mail->SMTPSecure = 'ssl';
|
||||
|
||||
//设置ssl连接smtp服务器的远程服务器端口号
|
||||
$mail->Port = $mailConfig['smtp_port'];
|
||||
|
||||
//设置发件人的主机域
|
||||
$mail->Hostname = $mailConfig['smtp_email'];
|
||||
|
||||
//设置发送的邮件的编码
|
||||
$mail->CharSet = 'UTF-8';
|
||||
|
||||
//设置发件人姓名(昵称)
|
||||
$mail->FromName = $mailConfig['smtp_name'];
|
||||
|
||||
//smtp登录的账号
|
||||
$mail->Username = $mailConfig['smtp_email'];
|
||||
|
||||
//smtp登录的密码
|
||||
$mail->Password = $mailConfig['smtp_password'];
|
||||
|
||||
//设置发件人邮箱地址
|
||||
$mail->setFrom($mailConfig['smtp_email'], $mailConfig['smtp_name']);
|
||||
|
||||
//邮件正文是否为html编码
|
||||
$mail->isHTML(true);
|
||||
|
||||
//设置收件人邮箱地址
|
||||
$mail->addAddress($to);
|
||||
|
||||
//添加该邮件的主题
|
||||
$mail->Subject = $title;
|
||||
|
||||
//添加邮件正文
|
||||
$mail->Body = $content;
|
||||
|
||||
try {
|
||||
$status = $mail->send();
|
||||
if ($status) {
|
||||
return '发送成功';
|
||||
} else {
|
||||
return '发送失败';
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
return '发送失败:' . $e->getMessage();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user