<?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. Shiro过滤器的维护与匹配执行

    servlet的初始化会触发核心过滤器的创建: public Object getObject() throws Exception { if (instance == null) { instanc ...

  2. 【爬虫】python 多线程知识

    第一段代码: __author__ = 'Administrator' import threading import time index = 0 class MyThread(threading. ...

  3. 调用sort段错误问题

    问题:sort的比较函数实现有问题导致进程调用sort时core了. 结论:特别要注意,sort的比较函数必须遵循严格弱排序(strict weak ordering)的规则.   这是最近在工作中遇 ...

  4. [TCO2009]NumberGraph

    题意:给你一些带权的节点和一个正整数集合$S$,$S$中每一个数的二进制后缀$0$个数相同,节点$x$的权值为$v_x$,如果对于$x,y$存在$t\in S$使得$|v_x-v_y|=t$,那么连边 ...

  5. 【矩阵乘法】CDOJ1610 黑红梅方

    考虑用4^n-不存在连续4个相同的. f(i,j,k,l)表示以i为结尾的序列,最后三位分别是j,k,l时的方案. 可以转移,写一个64*64的转移矩阵. 貌似可以优化?……未完待续. #includ ...

  6. 【分块】【LCT】bzoj2002 [Hnoi2010]Bounce 弹飞绵羊

    分块,每个点统计还有几步弹出该块,以及它弹出块后的下一个节点是哪个点. 注意:update某个点的时候,会可能对当前块内 该点及以前的点 产生影响,所以对这部分点进行更新. #include<c ...

  7. 【动态规划】POJ3616-Milking Time

    [题目大意] 奶牛Bessie在0~N时间段产奶.农夫约翰有M个时间段可以挤奶,时间段[a,b]Bessie能挤到的牛奶量v.奶牛产奶后需要休息R小时才能继续下一次产奶,求Bessie最大的挤奶量. ...

  8. Java编程思想学习(四)----第四章:控制执行流程

    在Java中,涉及的关键字包括if-else.while.do-while.for.return.break 以及选择语句switch.然而,Java并不支持goto语句(该语句引起许多反对意见,但它 ...

  9. List the Books

    描述 Jim is fond of reading books, and he has so many books that sometimes it's hard for him to manage ...

  10. Maven打war包时,添加本地jar包

    1.在项目根目录中新建lib文件夹,添加jar包 2.在pom.xml文件中添加dependency <dependency> <groupId>com.oracle</ ...