PHP发送邮件功能实现(使用163邮箱)
第一步
我用的是163邮箱发送邮件,做一个尝试,在尝试之前,需要要开启163邮箱的授权码如图所示,请记住您的授权码,将在之后的步骤中用到
第二步
需要下载一个类PHPMailer,我有这个资源已经上传了,免费的哦亲,连接在这http://download.csdn.NET/detail/s371795639/9693417
下载后,解压后此文件夹放在Vendor目录下,Vendor目录下有个PHPMailer文件夹,那就对了~
第三步
咱们该写代码了
html代码:
- <body>
- <form action="{:U('home/login/changepwd')}" method="post" enctype="multipart/form-data">
- 邮箱:<input type="text" id="mail" name="mail"/>
- 标题:<input type="text" id="title" name="title"/>
- 内容<input type="text" id="content" name="content"/>
- <input class="button" type="submit" name="submit" value="发送" style="margin: 0 auto;display: block;"/>
- </form>
- </body>
对应的Controller的PHP代码:
- public function changepwd()//发送邮件来修改密码
- {
- if(isset($_POST['submit']))
- {
- if(SendMail($_POST['mail'],$_POST['title'],$_POST['content']))
- $this->success('发送成功!');
- else
- $this->error('发送失败');
- }
- $this->display();
- }
第四步
这是关键
在Common下建立function.PHP输入代码如下
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2016/11/25 0025
- * Time: 上午 11:49
- */
- /**
- * 邮件发送函数
- */
- function sendMail($to, $title, $content) {
- Vendor('PHPMailer.PHPMailerAutoload');
- $mail = new PHPMailer(); //实例化
- $mail->IsSMTP(); // 启用SMTP
- $mail->Host=C('MAIL_HOST'); //smtp服务器的名称(这里以QQ邮箱为例)
- $mail->SMTPAuth = C('MAIL_SMTPAUTH'); //启用smtp认证
- $mail->Username = C('MAIL_USERNAME'); //你的邮箱名
- $mail->Password = C('MAIL_PASSWORD') ; //邮箱密码
- $mail->From = C('MAIL_FROM'); //发件人地址(也就是你的邮箱地址)
- $mail->FromName = C('MAIL_FROMNAME'); //发件人姓名
- $mail->AddAddress($to,"尊敬的客户");
- $mail->WordWrap = 50; //设置每行字符长度
- $mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式邮件
- $mail->CharSet=C('MAIL_CHARSET'); //设置邮件编码
- $mail->Subject =$title; //邮件主题
- $mail->Body = $content; //邮件内容
- $mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示
- return($mail->Send());
- }
在Conf下的config.php输入配置如下
- <?php
- return array(
- //'配置项'=>'配置值'
- 'MAIL_HOST' =>'smtp.163.com',//smtp服务器的名称
- 'MAIL_SMTPAUTH' =>TRUE, //启用smtp认证
- 'MAIL_USERNAME' =>'s371795639@163.com',//你的邮箱名
- 'MAIL_FROM' =>'s371795639@163.com',//发件人地址
- 'MAIL_FROMNAME'=>'尘中客',//发件人姓名
- 'MAIL_PASSWORD' =>'*******',//邮箱授权码
- 'MAIL_CHARSET' =>'utf-8',//设置邮件编码
- 'MAIL_ISHTML' =>TRUE, // 是否HTML格式邮件
- );
然后应该就没有问题了,至少我的是这样。如果用QQ邮箱发送貌似一直失败,修改上面的配置也是不行。也不知道为啥。
谢谢~
http://blog.csdn.net/s371795639/article/details/53333669
PHP发送邮件功能实现(使用163邮箱)的更多相关文章
- Laravel自带SMTP邮件组件实现发送邮件(QQ、163、企业邮箱都可)
Laravel自带SMTP邮件组件实现发送邮件(QQ.163.企业邮箱都可) laravel自带SMTP邮件配置和遇到的坑 laravel自带SwiftMailer库,集成了多种邮件API,可 ...
- JavaMail实现邮箱之间发送邮件功能
package com.minstone.message.util; import java.util.Date; import java.util.Properties; import javax. ...
- Thinkphp5的使用phpmailer实现发邮件功能(163邮箱)
Thinkphp5本身并没有实现发邮件的功能,至少据我所知. 本文利用网易邮箱作为发邮件的邮箱.作为发送邮件的前提是需要开启SMTP服务,打开网易邮件,点击设置按钮,如下图所示 勾选smtp服务 保存 ...
- java实现邮箱发送邮件功能
邮箱验证是一个很常见的功能了,基本上每个网站都会用的到,java也有专门的jar来处理邮件发送等服务,这里只是简单的实现一下发送邮件的功能,具体jar包就不再提供了,我会把所有需要引用的包都贴出来,方 ...
- app里使用163邮箱发送邮件,被163认为是垃圾邮件的坑爹经历!_ !
最近有个项目,要发邮件给用户设定的邮箱报警,然后就用了163邮箱,代码是网上借来的^^,如下: package com.smartdoorbell.util; import android.os.As ...
- java mail(发送邮件--163邮箱)
package com.util.mail; /** * 发送邮件需要使用的基本信息 */ import java.util.Properties; public class MailSenderIn ...
- DEDECMS会员注册如何配置邮箱发送邮件功能
网站邮件功能是一个非常基础和有效的通信工具,配合dede会员注册邮件验证功能可以大量的拒绝垃圾注册用户.那么如何配置DEDECMS会员注册邮箱发送邮件功能? 1:配置dedecms网站发信EMAI ...
- java调用163邮箱发送邮件
1:注册一个163邮箱,http://mail.163.com 调用发送邮件代码,查询smtp.163.com,作为发送邮件的服务器ip,类似的邮箱服务器应该也可以. MailSenderInfo m ...
- dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
随机推荐
- OpenCV中CvSVM部分函数解读
CvSVM::predict函数解析:无论是Mat接口还是CvMat接口终于都是通过指针的形式调用的.也就是终于都是调用的下面函数实现的 float CvSVM::predict( const flo ...
- CentOS 6.5开放80端口方法
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 写入修改 /etc/init.d/iptables save 保存修改 service ipta ...
- Apache2.4.25 VirtualHost rewrite_module
LoadModule rewrite_module libexec/apache2/mod_rewrite.so Include /private/etc/apache2/extra/httpd-vh ...
- Android 异步更新UI----handler+thread
android应用是单线程模式的. 单线程模式需要记住两条: 一.防止UI线程阻塞 二.确保只在UI线程中访问Android UI工具包 在开发Android应用时必须遵守单线程模型的原则:Andro ...
- 【转】Mybatis传多个参数(三种解决方案)
转自: http://www.2cto.com/database/201409/338155.html 据我目前接触到的传多个参数的方案有三种. 第一种方案: DAO层的函数方法 Public Use ...
- spring cloud eureka 服务端开启密码认证后,客户端无法接入问题
Eureka服务端开启密码的认证比较简单 在pom文件中加入: <dependency> <groupId>org.springframework.boot</group ...
- 从零开始学习 asp.net core 2.1 web api 后端api基础框架(四)-创建Controller
原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(四)-创建Controller 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog ...
- cocos2D-X从的源代码的分析cocos2D-X学习OpenGL(1)----cocos2D-X渲染架构
个人原创.欢迎转载,转载请注明原文地址http://blog.csdn.net/bill_man 从本篇文章開始,将分析cocos2D-X 3.0源码,第一部分是从cocos2D-X学习OpenGL ...
- dedecms织梦出现“Upload filetype not allow”原因和解决方案
资源:武汉科技有限公司倍频猫 我最近升级DEDE5.6出现此问题后.和解决的方法. 假设有同学是按某些朋友用删除代码的方法解决这个问题的话,建议你修正此做法,毕竟这是有非常大安全风险的.而DEDE本身 ...
- Carthage 包管理工具,另一种敏捷轻快的 iOS & MAC 开发体验 | SwiftCafe 咖啡时光
说起 iOS 开发的包管理,大家就不由得会想起 CocoaPods, 它确实是一个强大的工具.但这次咱们来关注另外一个包管理工具 Carthage,如果说 CocoaPods 像一个航母,一应俱全,坚 ...