<?php
/**
* Simple example script using PHPMailer with exceptions enabled
* @package phpmailer
* @version $Id$
*/ require_once'/class.phpmailer.php';
require_once'/class.smtp.php';
try {
$mail = new PHPMailer(true); //New instance, with exceptions enabled $body = file_get_contents('contents.html');
$body = preg_replace('/\\\\/','', $body); //Strip backslashes $mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP server port
$mail->Host = "smtp.163.com"; // SMTP server
$mail->Username = "1585358****@163.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password //$mail->IsSendmail(); // tell the class to use Sendmail $mail->AddReplyTo("1585358****@163.com","First Last"); $mail->From = "1585358****@163.com";
$mail->FromName = "First Last"; $to = "309407***@qq.com"; $mail->AddAddress($to); $mail->Subject = "First PHPMailer Message"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap $mail->MsgHTML($body); $mail->IsHTML(true); // send as HTML $mail->Send();
echo 'Message has been sent.';
} catch (phpmailerException $e) {
echo $e->errorMessage();
}
?>
用PHP发送邮件, 可以用PHPMailer。PHPMailer是一个用于发送电子邮件的PHP函数包

那么PHPMailer怎么用呢?

第一步当然是下载PHPMailer包,有两个版本 、php4版本和php5/6版本的 下载自己合适的

下载完以后 ,看到里面有很多文件 , 其实大部分都用不到

然后进入 test看到testemail.php 文件 这里面是一个例子

代码类似

<?php
/**
* Simple example script using PHPMailer with exceptions enabled
* @package phpmailer
* @version $Id$
*/ require '../class.phpmailer.php'; try {
$mail = new PHPMailer(true); //New instance, with exceptions enabled $body = file_get_contents('contents.html'); // 发送的内容
$body = preg_replace('/\\\\/','', $body); //Strip backslashes $mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP server port
$mail->Host = "smtp.163.com"; // SMTP server
$mail->Username = "yinxiaoluan110@163.com"; // SMTP server username
$mail->Password = "*********"; // 填写你自己邮箱的密码 //$mail->IsSendmail(); // tell the class to use Sendmail $mail->AddReplyTo("yinxiaoluan110@163.com","First Last"); $mail->From = "yinxiaoluan110@163.com"; //发件人邮箱
$mail->FromName = “小白"; //发件人 $to = "745888750@qq.com"; //收件人 $mail->AddAddress($to); $mail->Subject = "First PHPMailer Message"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap $mail->MsgHTML($body); $mail->IsHTML(true); // send as HTML $mail->Send();
echo 'Message has been sent.';
} catch (phpmailerException $e) {
echo $e->errorMessage();
}
?>
上面代码 ,有注释说明的比较重要 需要认真填写一下 有不懂SMTP服务器的 可以参考一下 wordpress发送解决方法 这篇文章 注意:
1.如果报错 :Could not execute: /var/qmail/bin/sendmail 那么你需要把 配置文件中的 $mail->IsSendmail(); 注释掉
2.如果你用的是空间
报错:SMTP Error: Could not connect to SMTP host
那么你需要 修改
class.smtp.php
$this->smtp_conn = @fsockopen
改为
$this->smtp_conn = @pfsockopen
因为很多空间把fsockopen禁用了! 按照以上步骤 , 您的邮件应该已经发送成功了 其实 phpmailer 包我们真正用到的文件只有 class.phpmailer.php和class.smtp.php
require_once('class.phpmailer.php');//引入类库文件
$mail = new PHPMailer(); //实例化
$mail->IsSMTP(); // 启用SMTP
$mail->Host = "smtp.sina.com"; //SMTP服务器 这里以新浪邮箱为例子
$mail->Port = 25; //邮件发送端口
$mail->SMTPAuth = true; //启用SMTP认证
$mail->CharSet = "UTF-8"; //字符集
$mail->Encoding = "base64"; //编码方式
$mail->Username = "test@sina.com"; //你的邮箱
$mail->Password = "123"; //你的密码
$mail->Subject = "测试邮件标题"; //邮件标题
$mail->From = "test@sina.com"; //发件人地址(也就是你的邮箱)
$mail->FromName = "发件人测试姓名"; //发件人姓名
$address = "test@sina.com";//收件人email
$mail->AddAddress($address, "某某人");//添加收件人地址,昵称
$mail->AddAttachment("test,zip","重命名附件.zip"); // 添加附件,并重命名
$mail->IsHTML(true); //支持html格式内容
$mail->Body = "这是一份测试邮件,此为邮件内容"; //邮件内容
//发送
if(!$mail->Send()) {
echo "fail: " . $mail->ErrorInfo;
} else {
echo "ok";
}
<?php
/**
* Simple example script using PHPMailer with exceptions enabled
* @package phpmailer
* @version $Id$
*/ require_once'/class.phpmailer.php';
require_once'/class.smtp.php';
try {
$mail = new PHPMailer(true); //New instance, with exceptions enabled //$body = file_get_contents('contents.html');
//$body = preg_replace('/\\\\/','', $body); //Strip backslashes $mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP server port
$mail->Host = "smtp.163.com"; // SMTP server
$mail->Username = "1585358****@163.com"; // SMTP server username
$mail->Password = "**********"; // SMTP server password //$mail->IsSendmail(); // tell the class to use Sendmail $mail->AddReplyTo("1585358****@163.com","First Last"); $mail->From = "1585358****@163.com";
$mail->FromName = "First Last"; $to = "******@qq.com"; $mail->AddAddress($to); $mail->Subject = "First PHPMailer Message"; $mail->Body="这是我的测试邮件,the test email"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap //$mail->CharSet = "UTF-8"; //字符集 //$mail->MsgHTML($body); $mail->IsHTML(true); // send as HTML $mail->Send();
echo 'Message has been sent.';
} catch (phpmailerException $e) {
echo $e->errorMessage();
}
?>
<?php
require("class.phpmailer.php"); //下载的文件必须放在该文件所在目录
$mail = new PHPMailer(); //建立邮件发送类
$address = $_POST['address'];
$mail->IsSMTP(); // 使用SMTP方式发送
$mail->CharSet='UTF-8';// 设置邮件的字符编码
$mail->Host = "mail.xxxxx.***"; // 您的企业邮局域名
$mail->SMTPAuth = true; // 启用SMTP验证功能
$mail->Port = "***"; //SMTP端口
$mail->Username = ***@xxxx.***; // 邮局用户名(请填写完整的email地址)
$mail->Password = "******"; // 邮局密码
$mail->From = ***@xxxx.***; //邮件发送者email地址
$mail->FromName = "您的名称";
$mail->AddAddress("$address", "");//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")
//$mail->AddReplyTo("", "");
//$mail->AddAttachment("/var/tmp/file.tar.gz"); // 添加附件
//$mail->IsHTML(true); // set email format to HTML //是否使用HTML格式
$mail->Subject = "PHPMailer测试邮件"; //邮件标题
$mail->Body = "Hello,这是测试邮件"; //邮件内容
$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; //附加信息,可以省略
if(!$mail->Send())
{
echo "邮件发送失败. <p>";
echo "错误原因: " . $mail->ErrorInfo;
exit;
}
echo "邮件发送成功";
?>

我的PHPMailer_v5.1 使用的更多相关文章

  1. PHPMailer_v5.1 使用[转]

    <?php /* * email 报警,主要检查服务器数据库是否还能正常连接 */ require("../common/config.php"); include(&quo ...

  2. Thinkphp 使用gmail发送邮件

    1.Thinkphp 发送邮件内容来自:http://www.thinkphp.cn/code/32.html /** * 系统邮件发送函数 * @param string $to 接收邮件者邮箱 * ...

  3. tp 邮件发送

    1.需要phpmail邮件发送包, 2.邮件发送函数function sendMail($to, $title, $content){ require_once('./PHPMailer_v5.1/c ...

随机推荐

  1. 【剑指offer】面试题 29. 顺时针打印矩阵

    面试题 29. 顺时针打印矩阵 题目描述 题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  2. 删除DOM节点应用

    <!-- HTML结构 --> <ul id="test-list"> <li>JavaScript</li> <li> ...

  3. 三个通用的脚本,处理MySQL WorkBench导出表的JSON数据进SQLITE3

    一个通用的脚本,处理MySQL WorkBench导出表的JSON数据进SQLITE3,创建的是FTS4的虚拟表 # -*- coding:utf-8 -*- import json import s ...

  4. LOJ #6280. 数列分块入门 4-分块(区间加法、区间求和)

    #6280. 数列分块入门 4 内存限制:256 MiB时间限制:500 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: hzwer 提交提交记录统计测试数据讨论   题目描述 给出一个 ...

  5. servlet 的控制缓存时间和response的重定向

    //控制缓存时间 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletE ...

  6. shell 读配置文件

    今天跟同事探讨了一下 shell 脚本中对配置文件的读写问题.在此总结一下常用的配置文件的读写方式.大多数的配置文件都是以key=value形式存在的.配置项完全由键值对组成.这样的配置文件读写也是最 ...

  7. 【Vijos 1607】【NOI 2009】植物大战僵尸

    https://vijos.org/p/1607 vijos界面好漂亮O(∩_∩)O~~ 对于一个植物x,和一个它保护的植物y,连一条边<x,y>表示x保护y,对于每个植物再向它左方的植物 ...

  8. Codeforces Round #196 (Div. 1) 题解

    (CF唯一不好的地方就是时差……不过还好没去考,考的话就等着滚回Div. 2了……) A - Quiz 裸的贪心,不过要用矩阵乘法优化或者直接推通式然后快速幂.不过本傻叉做的时候脑子一片混乱,导致WA ...

  9. 【转载】R中有关数据挖掘的包

    下面列出了可用于数据挖掘的R包和函数的集合.其中一些不是专门为了数据挖掘而开发,但数据挖掘过程中这些包能帮我们不少忙,所以也包含进来. 1.聚类 常用的包: fpc,cluster,pvclust,m ...

  10. BZOJ 1475 方格取数(二分图最大点权独立集)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1475 [题目大意] 给出一个n*n的方格,从中取一些不相邻的数字,使得和最大 [题解] ...