浏览:7510 最后更新:2017-03-18
14:21 分类:类库
关键字: PHPMailer

第一步:准备PHPMailer

将下载的PHPMailer放到ThinkPHP/library/Vendor下面

第二:

windows下在php.ini中去掉下面的分号

extension=php_openssl.dll

并将allow_url_fopen = Off改为

allow_url_fopen = On

第三:

把以下内容放入common配置文件下:

'THINK_EMAIL' => array(



'SMTP_HOST' => 'smtp.163.com', //SMTP服务器



'SMTP_PORT' => '465', //SMTP服务器端口



'SMTP_USER' => 'huangfenhu10@163.com', //SMTP服务器用户名



'SMTP_PASS' => '******', //SMTP服务器密码



'FROM_EMAIL' => 'huangfenhu10@163.com', //发件人EMAIL



'FROM_NAME' => '****', //发件人名称



'REPLY_EMAIL' => 'huangfenhu10@163.com',
//回复EMAIL(留空则为发件人EMAIL)



'REPLY_NAME' => '*****', //回复名称(留空则为发件人名称)



),

第四:

把以下内容放入common下面的common下的function.php下:

function think_send_mail($to, $name, $subject = '', $body = '',
$attachment = null){



$config = C('THINK_EMAIL');



Vendor('PHPMailer.PHPMailerAutoload');
//从PHPMailer目录导class.phpmailer.php类文件



$mail = new PHPMailer(); //PHPMailer对象



$mail->CharSet = 'UTF-8';
//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码



$mail->IsSMTP(); // 设定使用SMTP服务



$mail->SMTPDebug = 0; // 关闭SMTP调试功能



// 1 = errors and messages



// 2 = messages only



$mail->SMTPAuth = true; // 启用 SMTP 验证功能



$mail->SMTPSecure = 'ssl'; // 使用安全协议



$mail->Host = $config['SMTP_HOST']; // SMTP 服务器



$mail->Port = $config['SMTP_PORT']; // SMTP服务器的端口号



$mail->Username = $config['SMTP_USER']; // SMTP服务器用户名



$mail->Password = $config['SMTP_PASS']; // SMTP服务器密码



$mail->SetFrom($config['FROM_EMAIL'],
$config['FROM_NAME']);



$replyEmail =
$config['REPLY_EMAIL']?$config['REPLY_EMAIL']:$config['FROM_EMAIL'];

$replyName =
$config['REPLY_NAME']?$config['REPLY_NAME']:$config['FROM_NAME'];

$mail->AddReplyTo($replyEmail, $replyName);



$mail->Subject = $subject;



$mail->AltBody = "为了查看该邮件,请切换到支持 HTML 的邮件客户端";



$mail->MsgHTML($body);



$mail->AddAddress($to, $name);



if(is_array($attachment)){ // 添加附件



foreach ($attachment as $file){



is_file($file) && $mail->AddAttachment($file);



}



}



return $mail->Send() ? true : $mail->ErrorInfo;



}

第五步调取函数:

public function add(){

if (think_send_mail($_POST['mail'], $_POST['title'], $subject =
'一起来欢乐!',$_POST['content'], $attachment = null)) {

$this->success('发送成功!');

} else {

$this->error('发送失败');

}

}

第六步在模板里传值:



邮箱:

标题:

内容:

yle="margin:
0 auto;display: block;"/>

thinkphp3.2.2邮箱发送的更多相关文章

  1. Linux配置邮箱发送(MUTT/MSMTPQ)

    配置邮箱发送 http://www.ilanni.com/?p=10589

  2. java邮件发送 qq与163邮箱互发和qq和163邮箱发送其他邮箱实例

    研究了近一天的时间,通过查阅相关资料,终于对java发送邮件的机制,原理有了一点点的理解,希望能够帮到大家! 1.首先要向你的项目里导入1个jar包:mail-1.4.4.jar即可(实现qq和163 ...

  3. 通过邮箱发送html报表

    前言 需求是发送邮件时, 可以将报表正文贴到邮件里, 可以正常复制选中报表内容. 目前的做法是简单粗暴的转成了一张图片, 这样效果显然是很糟糕的. 今天看到邮箱里可以预览Word, Excel, F1 ...

  4. spring 实现邮箱发送

    使用spring mail 实现的邮箱发送功能,包括附件的发送(附件发送要保证附件存在的路径是真实),使用maven集成jar包,通过spring mvc 实现前后台的调用,发送方使用的是163邮箱, ...

  5. java邮箱发送

    一.为何要使用邮箱发送 相信大家在日常工作生活中少不了和邮件打交道,比如我们会用邮件进行信息交流,向上级汇报日常工作:邮件发送的原理是什么?邮件是如何发送的呢?本系列教程将会讲解邮件如何申请可用jav ...

  6. JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架)

    JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架) 本来想实现 QQ 登录,有域名一直没用过,还得备案,好麻烦,只能过几天再更新啦. 先把实现的发送邮箱验证码更能更新了. 老规矩,更多内容在注释 ...

  7. qq邮箱发送,mail from address must be same as authorization user

    由于邮箱发送的邮箱账号更换,所以重新测试.结果一直出错,要不就是请求超时,要不就是未授权. 用smtp 开始的时候,端口使用495,结果是请求超时. 后来改成25,结果是未授权. 再后来听人说,有一个 ...

  8. Java邮箱发送——企业版

    企业版邮箱发送工具类 import java.security.Security; import java.util.Properties; import javax.mail.Authenticat ...

  9. SpringBoot中快速实现邮箱发送

    前言 在许多企业级项目中,需要用到邮件发送的功能,如: 注册用户时需要邮箱发送验证 用户生日时发送邮件通知祝贺 发送邮件给用户等 创建工程导入依赖 <!-- 邮箱发送依赖 --> < ...

随机推荐

  1. Material Theme 文件名的标签(tab)被大写了

    我们平时使用的都是小写的,今天第一次使用Material Theme 这个发现标签被大写了,百度后没找到然后自己找了找设置,解决了 原来是这样的, 设置如下 设置后: 希望能帮到有同样问题的同学

  2. Office 365也是.NET Core应用开发新战场

    最近有幸阅读了陈希章花了一年时间为国内开发者贡献的<Office 365 开发入门指南>. 虽然早期接触过SharePoint的开发,2007年之后就再也没有接触SharePoint的开发 ...

  3. Head First设计模式之模板方法模式

    一.定义 在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变算法结构的情况下,重定义该算法中的某些特定步骤. 比较通俗的说法,子类决定如何实现算法中的某些步骤,比如两个一连串 ...

  4. CSS3 美女动画相框

    把下面的内容放到一个body内,运行看一看:) <style> *{ margin:0; padding:0;} .bg1{ background-image:-moz-linear-gr ...

  5. python键盘读入的input方法

    今天了解了一下python,学了一些小东西,便存下了: input函数(raw_input在3.0版本没有,所以就不说了!) num = input ("输入一个数:")  |备注 ...

  6. window64 PHP ffmpeg详解简单上手 音频amr转mp3

    从网上找了一大堆关于window 64 ffmpeg的信息,都是又长又不关键,让人难消化. 我只要简单的amr转MP3格式而已. 终于搞明白.自己总结了下! 希望能帮助到喜欢言简意赅,一眼上手的同学. ...

  7. F# 之旅(下)

    写在前面的话 学习 F# 一定要去体会函数式编程的特点,推荐一下阮一峰的日志<函数式编程入门教程>. 在这篇文章中 递归函数 记录和可区分联合类型 模式匹配 可选类型 度量单位 类和接口 ...

  8. Visual Studio总是在重新生成项目?

    你是否曾经有过这种感觉:即使代码没有改变,Visual Studio也总是在重新生成项目? 我们可以生成一个项目,然后不做任何处理后再次生成,我们就可以看见--VS正在开始生成项目,而我的项目代码并没 ...

  9. nodejs+express+mysql实现restful风格的增删改查示例

    首先,放上项目github地址:https://github.com/codethereforam/express-mysql-demo 一.前言 之前学的java,一直用的ssm框架写后台.前段时间 ...

  10. [整理]k-vim-for-server通过vimrc修改vim格式

    1.备份原来的vim设置: cp ~/.vimrc ~/.vimrc_bak 2. 下载配置到指定目录 法一: curl https://raw.githubusercontent.com/wklke ...