PHPmailer邮件群发的入门例子

WBOY
发布: 2016-07-25 08:59:52
原创
1190 人浏览过
phpmailer是php编程中经常用得到的mail发送类,为大家介绍一个入门级的例子,用phpmailer进行邮件群发,有需要的朋友,可以参考下。

1、创建smtp_mail函数 phpmai.php

<?php
/**
 * PHPMailer群发邮件的例子
 * Edit bbs.it-home.org
*/
require("PHPMailer/class.phpmailer.php");//调用phpmailer

function smtp_mail ($sendto_email, $subject, $body, $extra_hdrs, $user_name,$host,$mailname,$mailpass,$text,$mail_table) {
$mail = new PHPMailer();
$mail->IsSMTP();                // send via SMTP
$mail->Host = $host; // SMTP servers
$mail->SMTPAuth = true;         // turn on SMTP authentication
$mail->Username =$mailname;   // SMTP username  注意:普通邮件认证不需要加 @域名
$mail->Password =$mailpass;        // SMTP password
$mail->From = $mailname;      // 发件人邮箱
$mail->FromName =  "wangkan";  // 发件人

$mail->CharSet = "gb2312";            // 这里指定字符集!
$mail->Encoding = "base64";
$mail->AddAddress($sendto_email,"hello");  // 收件人邮箱和姓名
//$mail->AddBCC("邮箱", "ff");
//$mail->AddBCC("邮箱", "ff");这些可以暗送
//$mail->AddReplyTo("test@jbxue.com","aaa.com");
//$mail->WordWrap = 50; // set word wrap
//$mail->AddAttachment("/qita/htestv2.rar"); // 附件
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");
$mail->IsHTML(true);  // send as HTML
// 邮件主题
$mail->Subject = $subject;
// 邮件内容
$mail->Body =$text;
                                                                
$mail->AltBody ="text/html";
if(!$mail->Send())
{
$error=$mail->ErrorInfo;
/*if($error=="smtpnot")//自定义错误,没有连接到smtp,掉包的情况,出现这种情况可以重新发送
{
sleep(2);
$song=explode("@",$sendto_email);
$img="<img     style="max-width:90%"  style="max-width:90%" src='http://bbs.it-home.org/email.php?act=img&mail=".$sendto_email."&table=".$mail_table."' / alt="PHPmailer邮件群发的入门例子 " >";
smtp_mail($sendto_email,"发送".$song[0].$biaoti, 'NULL', 'abc',$sendto_email,$host,$mailname,$mailpass,
$img."发送".$song[0].$con,'$mail_table');//发送邮件
}*/
 $sql="insert into error(error_name,error_mail,error_smtp,error_time,error_table) values('$error','$sendto_email','$mailname',now(),'$mail_table')";
 $query=mysql_query($sql);//发送失败把错误记录保存下来
}
else {
  if($mailname=="aaa@jbxue.com")
  {
  echo ""; //个人需求,可以去掉
  }
  else
  {
     echo "$user_name 邮件发送成功!请查收邮箱确认!<br />";//发送成功
  }
}
}
?>
登录后复制

2、邮件发送页 send.php

<?php
include("phpmail.php");

sleep(3);

smtp_mail($mail,"发送".$song[0].$biaoti, 'NULL', 'abc',$mail,$host,$mailname,$mailpass,$img."发送".$song[0].$con,$mail_table);//发送邮件
/*$upsql="update zhuangtai set jlid='$row[0]',zhuangtai=1,biaoti='$biaoti' where biao='$mail_table'";
$upquery=mysql_query($upsql);*///保存发送状态,可以去掉
?>
登录后复制

附,PHPMailer邮件发送类V5.1版下载地址。



来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!