解决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获得当前的脚本网址
Dec 10 PHP
PHP 页面编码声明方法详解(header或meta)
Mar 12 PHP
php自动注册登录验证机制实现代码
Dec 20 PHP
php用正则表达式匹配中文实例详解
Nov 06 PHP
php中操作memcached缓存进行增删改查数据的实现代码
Aug 15 PHP
Yii配置文件用法详解
Dec 04 PHP
PHP SplObjectStorage使用实例
May 12 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
Feb 08 PHP
详解Yii2 之 生成 URL 的方法
Jun 16 PHP
浅谈PHP匿名函数和闭包
Mar 08 PHP
详解PHP 7.4 中数组延展操作符语法知识点
Jul 19 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/09/11 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
laravel创建类似ThinPHP中functions.php的全局函数
2016/11/26 PHP
Thinkphp5 自定义上传文件名的实现方法
2019/07/23 PHP
不要小看注释掉的JS 引起的安全问题
2008/12/27 Javascript
Javascript中正则表达式的全局匹配模式分析
2011/04/26 Javascript
JS实现点击按钮自动增加一个单元格的方法
2015/03/09 Javascript
javascript鼠标滑动评分控件完整实例
2015/05/13 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
2016/01/10 Javascript
Bootstrap 粘页脚效果
2016/03/28 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
让nodeJS支持ES6的词法----babel的安装和使用方法
2017/07/31 NodeJs
详解Nuxt.js部署及踩过的坑
2018/08/07 Javascript
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
2018/12/12 Javascript
微信小程序开发注意指南和优化实践(小结)
2019/06/21 Javascript
JavaScript实现简单贪吃蛇效果
2020/03/09 Javascript
详细分析JavaScript中的深浅拷贝
2020/09/17 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
2021/02/25 Vue.js
Windows下Python的Django框架环境部署及应用编写入门
2016/03/10 Python
python实现协同过滤推荐算法完整代码示例
2017/12/15 Python
python删除某个字符
2018/03/19 Python
python函数修饰符@的使用方法解析
2019/09/02 Python
通过实例解析Python return运行原理
2020/03/04 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
2020/05/19 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
python线程优先级队列知识点总结
2021/02/28 Python
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
加拿大花店:1800Flowers.ca
2016/11/16 全球购物
前台领班岗位职责
2013/12/04 职场文书
初中生期末考试的自我评价
2013/12/17 职场文书
代办出身证明书
2014/10/21 职场文书
大学生英文求职信范文
2015/03/19 职场文书
拯救大兵瑞恩观后感
2015/06/09 职场文书
在 Golang 中实现 Cache::remember 方法详解
2021/03/30 Python
使用tensorflow 实现反向传播求导
2021/05/26 Python