这里我们以QQ邮箱为例,进行邮件发送。
1.更改配置项:
找到.env文件,更改以下配置项。
MAIL_DRIVER=smtp
MAIL_HOST=smtp.qq.com
MAIL_PORT=25
MAIL_USERNAME=2829038102@qq.com
MAIL_PASSWORD=sskladaiurciddae --->此处填的是你扣扣邮箱的授权码
MAIL_ENCRYPTION=tls -->固定不变
MAIL_FROM_ADDRESS=2829038102@qq.com
MAIL_FROM_NAME=小赫。
注意,要想使用qq邮箱发送功能,必须开放线上服务器的25端口(登录服务器,找到控制台)。
2.使用laravel邮件上传
使用make:mail 邮件名字,会自动帮你在app\mail\帮你生一个文件类。
里面有一个build方法,用来加载邮件发送的页面。
public function build()
{
// build方法负责发送邮件内容,在这里我们发送一段就行
return this->view('mail.index'); } 如果需要传参数,去构造方法里边 publicemail_token;
// 触发器:new时候自动触发
public function __construct(token) {this->email_token = token; // dd(this->email_token);
}
3.因为你要点击按钮发送邮件,所以你要点击按钮跳转到这个方法:
我们默认在注册页面发送邮件,因为你注册的时候需要给你
邮件发一个激活码
执行以下laravel提供的方法:
Mail::to(user)->send(new RegisterMail(user["email_token"]));
其中to(x) to用来定义你要发送给谁
send 用来指定用哪个邮件类来发送
例子:
post =request->all();
post["password"] = bcrypt(post["password"]);
post["email_token"] = str_random(10); // create()方法往数据表里边填充数据 // 特别重要!!!!!!!!!! // create方法有返回值,它返回的是你要添加的数据user = User::create(post); Mail::to(user)->send(new RegisterMail($user["email_token"]));
需要注意的是,你的user表里边必须得有email字段。
网友评论