<?php
  include("class/class.phpmailer.php"); //下载phpmailer并include两个文件
  include("class/class.smtp.php");

$mail = new PHPMailer();     //得到一个PHPMailer实例
  $mail->CharSet = "utf-8"; //设置采用utf-8中文编码(内容不会乱码)
  $mail->IsSMTP();                    //设置采用SMTP方式发送邮件
  $mail->Host = "smtp.qq.com";    //设置邮件服务器的地址(若为163邮箱,则是smtp.163.com)
  $mail->Port = 25;                           //设置邮件服务器的端口,默认为25
  $mail->From     = "发件人"; //设置发件人的邮箱地址
  $mail->FromName = "收件人姓名";           //设置发件人的姓名(可随意)
  $mail->SMTPAuth = true;                   //设置SMTP是否需要密码验证,true表示需要
  
  $mail->Username="发件人";    (后面有解释说明为何设置为发件人)
  
  $mail->Password = "发件人邮箱密码";
  $mail->Subject = "你好啊";    //主题
  $mail->AltBody = "text/html";                                // optional, comment out and test
  $mail->Body = "你的邮件的内容";      //内容  
  $mail->IsHTML(true);     
  //$mail->WordWrap = 50;                                 //设置每行的字符数
  $mail->AddReplyTo("回复地址","from");     //设置回复的收件人的地址(from可随意)
  $mail->AddAddress("收件人","to");     //设置收件的地址(to可随意)
       
  echo $mail->Send();

?>

若出现不能连接或者无法通过验证,则

1、在class.phpmailer.php中

363-365行,将smtp小写改成大写

public function IsSMTP() {
    $this->Mailer = 'SMTP'; 
  }

2、572-579行,将case "smtp"小写改成大写

switch($this->Mailer) {
        case 'sendmail':
          return $this->SendmailSend($header, $body);
        case 'SMTP':
          return $this->SmtpSend($header, $body);
        default:
          return $this->MailSend($header, $body);
      }

3、出现错误无法通过验证时,是因为在811-817中

$connection = true;
          if ($this->SMTPAuth) {
            if (!$this->smtp->Authenticate($this->Username, $this->Password)) {
              throw new phpmailerException($this->Lang('authenticate'));
            }
          }
        }

验证时调用的是Username和Password,所以设置时将Username与发件人的from设置相同,同时设置为发件人邮箱即可解决通过。

使用phpmailer发送邮件(以QQ邮箱为例)的更多相关文章

  1. zabbix4.2配置邮件+脚本报警:以QQ邮箱为例

    一.邮箱配置:开启smtp服务和授权 开启smtp选项后,系统会生成一个授权,你需要记住这个授权码,后面需要写入配置文件. 二.配置管理mailx: (1)安装mailx:[root@zabbix-s ...

  2. PHPEmailer使用简介(以qq邮箱为例)

    1.从网上下载PHPEmailer: 2.确保PHP环境支持sockets扩展,还要开启openssl,如下图: 3.配置QQ邮箱 1.开启SMTP服务 2.验证密保 3.获取授权码(这个就是IMAP ...

  3. thinkphp5 邮件发送(qq邮箱为例)

    一.首先需要你开启smtp 服务,登录qq邮箱,进入设置 -> 账户 注意: 开启后会生成授权码,一定要记下,两个都记下,登录邮件客户端需要.这里配置邮件发送也需要这个授权码 二. 下载phpm ...

  4. flask入门与发送邮件与QQ邮箱

    前言: 快两个月没写博客了, 原因是懒了, 没有最初写博客那种看到阅读量上涨, 别人给自己文章点赞后的开心. 心态也发生了不少变化. 有机会再来写写. 前两个月我去厦门某公司实习, 本着去厦门玩一玩还 ...

  5. Python3+smtplib+poplib+imaplib实现发送和收取邮件(以qq邮箱为例)

    一.说明 1.1 程序说明 (1)smtp是邮件发送协议:pop和imap都是邮件接收协议,两者的区别通常的说法是imap的操作会同步到邮箱服务器而pop不会,表现上我也不是很清楚 (2)本程序实现使 ...

  6. linux mailx 发送邮件到qq邮箱

    POP3/SMTP服务默认是开启的,没开启的点开启 然后点击生成授权码,发送消息,就会给出授权码了 yum install mailx # centos sudo apt-get install he ...

  7. Java实现163邮箱发送邮件到QQ邮箱

    注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6812973124141711876/ 先创建一个maven的普通项目 添加依赖,附在文档末尾 其中几个注意的地方 ...

  8. 【PHPmailer】发送邮件(以163邮箱为例)

    1.参考TP社区:http://www.thinkphp.cn/code/989.html 2.phpmailer.rar下载地址:http://www.thinkphp.cn/code/downlo ...

  9. PHP下利用PHPMailer配合QQ邮箱下的域名邮箱发送邮件

    作 为PHP入门开发者,常常有这种述求:自己的网站中需要添加一个使用自己的域名作为发件人邮件地址的自动发送邮件的方法,用于诸如给用户发送验证码.通知 信息等.比如:我的某个用户注册模块,需要使用reg ...

随机推荐

  1. AdminLTE

    AdminLTE搭建前端   0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp ...

  2. MySQL查询优化:连接查询排序limit

    MySQL查询优化:连接查询排序limit(join.order by.limit语句) 2013-02-27      个评论       收藏    我要投稿   MySQL查询优化:连接查询排序 ...

  3. NSString 练习

        //将“⽂文艺⻘青年”改成“213⻘青年”.   NSString *str = @"文艺青年";   NSString *str1 = [str stringByRepl ...

  4. AST抽象语法树

    抽象语法树简介 (一)简介 抽象语法树(abstract syntax code,AST)是源代码的抽象语法结构的树状表示,树上的每个节点都表示源代码中的一种结构,这所以说是抽象的,是因为抽象语法树并 ...

  5. Mysql分页查询

    取前5条数据 select * from table_name limit 0,5 或 select * from table_name limit 5 取第11条到第15条数据,共5条 select ...

  6. JavaScript 函数和对象

    在javascirpt 世界中,所有的函数都是对象,并且还可以被用来创建对象. function make_person(firstname, lastname, age) { person = {} ...

  7. 【HDOJ】2579 Dating with girls(2)

    简单BFS. /* 2579 */ #include <iostream> #include <queue> #include <cstdio> #include ...

  8. 使用string

    public class UsingString {     public static void testFindStr(String str)     {         System.out.p ...

  9. 遍历Map的几种方法

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  10. shell 二元操作符 =~

    17:14 [logc@a005.client.hadoop.qingdao.youku]$ a=1 17:14 [logc@a005.client.hadoop.qingdao.youku]$ if ...