解决Yii2邮件发送结果返回成功,但接收不到邮件的问题


Posted in PHP onMay 23, 2017

前言

本文主要介绍的是关于解决Yii2邮件发送返回成功但接收不到邮件问题的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:

刚刚用了一下yii邮件发送功能,虽然结果返回成功,但接收不到邮件。

配置文件代码如下:

'components' => [
 'db' => [
  'class' => 'yii\db\Connection',
  'dsn' => 'mysql:host=localhost;dbname=yiidemo',
  'username' => 'root',
  'password' => 'root',
  'charset' => 'utf8',
 ],
 'mailer' => [
  'class' => 'yii\swiftmailer\Mailer',
  'viewPath' => '@common/mail',
  // send all mails to a file by default. You have to set
  // 'useFileTransport' to false and configure a transport
  // for the mailer to send real emails.
  'useFileTransport' => true,
  'transport' => [ 
   'class' => 'Swift_SmtpTransport', 
   'host' => 'smtp.qq.com', 
   'username' => '********@qq.com', 
   'password' => '********',
   'port' => '465', 
   'encryption' => 'ssl', 
  ], 
 ],
],

控制器代码:

public $modelClass = 'common\models\User';

public function actions()
{
 $actions = parent::actions();

 // 禁用"create" 操作后可用自己在控制器中写的方法
 unset($actions['update'],$actions['create'],$actions['delete']);
 
 //$actions['index']['prepareDataProvider'] = [$this, 'prepareDataProvider'];
 return $actions;
}



public function actionCreate(){

 $request = Yii::$app->request;
 $params = $request->post();
 if($params){
 
 $fromName = $request->getBodyParam('fromName');
 $fromBady = $request->getBodyParam('fromBady');
 $toName = $request->getBodyParam('toName');
 $body = $request->getBodyParam('body');
 return $this->send($fromName,$fromBady,$toName,$body);
 
 }
 
 return false;

}

/*
 * Email Send function
 * @param1 $fromName
 * @param1 $toName
 * @param1 $body
 * $return boo1ean
 * 
 */

public function send($fromName,$fromBady,$toName,$body = ''){
 
 $mail = \Yii::$app->mailer->compose()
  ->setFrom([$fromName=>$fromBady])
  ->setTo($toName)
  ->setSubject('邮件发送配置')
  ->setTextBody($body) //发布纯文字文本
  ->send();
 if($mail){
  return [
   'name' => [
    'fromName' => $fromName,
    'fromBady' => $fromBady,
    'toName' => $toName,
    'body' => $body,
   ],
   'message' => '发生到['.$toName.']的邮件成功!',
   'code' => 0,
   'status' => 200,
  ];
 }else{
  return [
   'name' => 'Error',
   'message' => '发生到'.$toName.'的邮件失败!',
   'code' => 0,
   'status' => 402,
  ];
 }
}

但是你会发现数据返回是成功的但是你却没收到邮件

解决方法:

这是你应该把
'useFileTransport' => true 改成 'useFileTransport' => false,

并且你的邮箱密码是qq授权码(到你邮箱中的设置->账户 查看)

通过以上努力你会成功接收邮件!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
汉字转化为拼音(php版)
Oct 09 PHP
WHOIS类的修改版
Oct 09 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 PHP
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
Mar 03 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
Apr 17 PHP
PHP中两个float(浮点数)比较实例分析
Sep 27 PHP
PHP语法小结之基础和变量
Nov 22 PHP
PHP编写学校网站上新生注册登陆程序的实例分享
Mar 21 PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
Oct 20 PHP
php array_pop 删除数组最后一个元素实例
Nov 02 PHP
redis查看连接数及php模拟并发创建redis连接的方法
Dec 15 PHP
PHP whois查询类定义与用法示例
Apr 03 PHP
yii 2.0中表单小部件的使用方法示例
May 23 #PHP
php实现留言板功能(会话控制)
May 23 #PHP
php实现文件预览功能
May 23 #PHP
PHP写的简单数字验证码实例
May 23 #PHP
php实现评论回复删除功能
May 23 #PHP
Yii框架批量插入数据扩展类的简单实现方法
May 23 #PHP
php利用fsockopen GET/POST提交表单及上传文件
May 22 #PHP
You might like
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
2011/12/14 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
2013/04/23 PHP
php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
2016/09/23 PHP
JS类的封装及实现代码
2009/12/02 Javascript
让firefox支持IE的一些方法的javascript扩展函数代码
2010/01/02 Javascript
TextArea不支持maxlength的解决办法(jquery)
2011/09/13 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
javascript模拟命名空间
2015/04/17 Javascript
JS实现当前页居中分页效果的方法
2015/06/18 Javascript
原生JavaScript编写canvas版的连连看游戏
2016/05/29 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
JavaScript实现音乐自动切换和轮播
2017/11/05 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
[52:15]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS LGD-GAMING
2014/05/23 DOTA
[01:04:05]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python+selenium实现截图图片并保存截取的图片
2018/01/05 Python
Python数字图像处理之霍夫线变换实现详解
2018/01/12 Python
python实现多线程行情抓取工具的方法
2018/02/28 Python
python绘制立方体的方法
2018/07/02 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
python 自动去除空行的实例
2018/07/24 Python
python获取url的返回信息方法
2018/12/17 Python
几个CSS3的flex弹性盒模型布局的简单例子演示
2016/05/12 HTML / CSS
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
英国赛车、汽车改装和摩托车零件购物网站:Demon Tweeks
2018/10/29 全球购物
美国杰西潘尼官网:JCPenney
2019/06/12 全球购物
计算机网络毕业生自荐信
2013/10/01 职场文书
关于幼儿的自我评价
2013/12/18 职场文书
中专生职业生涯规划书范文
2013/12/29 职场文书
学生会主席竞聘书
2014/03/31 职场文书
单位委托书范本
2014/04/04 职场文书
企业优秀员工事迹材料
2014/05/28 职场文书
社区党务工作总结2015
2015/05/19 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang
用Python仅20行代码编写一个简单的端口扫描器
2022/04/08 Python