PHP实现邮件群发的源码


Posted in PHP onJune 18, 2013
 <?php 
 // 请求 PHPmailer类 文件 
 require_once("class.phpmailer.php");   //发送Email函数 
 function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) { 
 $mail = new PHPMailer();  
 $mail->IsSMTP();                                     // send via SMTP  
 $mail->Host = "smtp.163.com";                       // SMTP servers  
 $mail->SMTPAuth = true;                             // turn on SMTP authentication  
 $mail->Username = "jessiejl";                          // SMTP username     注意:普通邮件认证不需要加 @域名 
 $mail->Password = "1983106";                         // SMTP password  
 $mail->From = "";                      // 发件人邮箱 
 $mail->FromName = "WWW.NIUTW.COM";                 //   发件人 ,比如 唯美搭配网 
 $mail->CharSet = "GB2312";                          // 这里指定字符集! 
 $mail->Encoding = "base64";  
 $mail->AddAddress($sendto_email,$user_name);        // 收件人邮箱和姓名 
 $mail->AddReplyTo("","Web之家");  
 //$mail->WordWrap = 50; // set word wrap  
 //$mail->AddAttachment("/var/tmp/file.tar.gz");                                                    // attachment  附件1 
 //$mail->AddAttachment("/tmp/image.jpg", "new.jpg");                                         //附件2 
 $mail->IsHTML(true);                               // send as HTML  
 $mail->Subject = $subject;                        
 // 邮件内容      可以直接发送html文件 
 $mail->Body = <<<EOT 
 <html> 
 <head> 
 <title>Treasurery Online 周刊</title> 
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
 <style type="text/css"> 
 <!-- 
 .STYLE1 {color: #009900} 
 .STYLE3 {color: #000000} 
 a:link { 
     color: #333333; 
 } 
 .STYLE4 {color: #666666} 
 body,td,th { 
     font-family: 宋体; 
     font-size: 12px; 
 } 
 .STYLE6 {color: #FFFFFF} 
 .STYLE9 {color: #DCB003} 
    
 --> 
 </style> 
 </head> 
 <body bgcolor="#FFFFFF" > 
 </body> 
 </html> 
 EOT; 
 $mail->AltBody ="text/html";  
 if($mail->Send())  
         {  
    info_write("ok.txt","$user_name 发送成功"); 
         }  
 else { 
    info_write("falied.txt","$user_name 失败,错误信息$mail->ErrorInfo"); 
      } 
 } 
 // 发送Email函数结束 
 // 写入发送结果函数,错误日志记录 
 function info_write($filename,$info_log) 
     { 
      $info.= $info_log; 
      $info.="\r\n"; 
      $fp = fopen ($filename,a); 
      fwrite($fp,$info); 
      fclose($fp); 
     } 
 //定时跳转页面 函数        其中 1000是时间,1秒, 您可以自定义 
 function redirect($url) 
     { 
             echo "<script> 
                 function redirect() 
                 { 
                     window.location.replace('$url'); 
                 } 
                 window.setTimeout('redirect();', 15000); 
               </script>"; 
     } 
 //读取文本 邮件地址  您也可以读 数据库 
         $filename = "email.txt"; 
         $fp = fopen($filename,"r"); 
         $contents = fread($fp,filesize($filename)); 
         $list_email=explode("\r\n",$contents);            
         $len=count($list_email); 
         fclose($fp); 
 // 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名) 
 $i = $_GET['action']; 
         $i++;        
 if ($i<$len) 
     { 
         $rs=explode("@",$list_email[$i]); 
         $user_name = $rs['0']; 
         echo "正在发送第{$i}封({$list_email[$i]})邮件......{$user_name}"; 
         smtp_mail($list_email[$i], 'Treasurery Online 周刊第十二期', $body, 'http://www.yem120.com/', $user_name); 
         redirect("?action=$i"); 
     } 
 else { 
      echo "邮件全部发送完毕"; 
      exit; 
       } 
 ?>

小思维:
上面的读取文章email.txt,也可以直接是qq号码,每行一个号码,然后用fget()读取每行qq号码,最后在加上qq邮箱后缀 @qq.com即可
PHP 相关文章推荐
PHP 加密解密内部算法
Apr 22 PHP
使用PHPMyAdmin修复论坛数据库的图文方法
Jan 09 PHP
PHP5中Cookie与 Session使用详解
Apr 30 PHP
php实现mysql封装类示例
May 07 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
destoon实现调用自增数字从1开始的方法
Aug 21 PHP
PHP获取数组最大值下标的方法
May 12 PHP
PHP的Socket通信之UDP通信实例
Jul 02 PHP
PHP模拟post提交数据方法汇总
Feb 16 PHP
Yii2中cookie用法示例分析
Jul 18 PHP
php数组和链表的区别总结
Sep 20 PHP
解决Laravel 不能创建 migration 的问题
Oct 09 PHP
解析PHP跨站刷票的实现代码
Jun 18 #PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
Jun 18 #PHP
360通用php防护代码(使用操作详解)
Jun 18 #PHP
浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
Jun 18 #PHP
解析PHP计算页面执行时间的实现代码
Jun 18 #PHP
php实现简单洗牌算法
Jun 18 #PHP
php抽奖小程序的实现代码
Jun 18 #PHP
You might like
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
php版交通银行网银支付接口开发入门教程
2016/09/26 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
JQuery 表单中textarea字数限制实现代码
2009/12/07 Javascript
JavaScript 学习笔记(十四) 正则表达式
2010/01/22 Javascript
jquery png 透明解决方案(推荐)
2010/08/21 Javascript
js弹出窗口之弹出层的小例子
2013/06/17 Javascript
JavaScript设计模式之建造者模式介绍
2014/12/28 Javascript
Angularjs注入拦截器实现Loading效果
2015/12/28 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
jquery实现垂直和水平菜单导航栏
2020/08/27 Javascript
js获取form表单所有数据的简单方法
2016/08/18 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
2016/09/17 Javascript
简单谈谈ES6的六个小特性
2016/11/18 Javascript
原生js实现查询天气小应用
2016/12/09 Javascript
JS实现合并json对象的方法
2017/10/10 Javascript
Three.js实现简单3D房间布局
2018/12/30 Javascript
vue项目首屏加载时间优化实战
2019/04/23 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
Python使用htpasswd实现基本认证授权的例子
2014/06/10 Python
Python中的闭包总结
2014/09/18 Python
Python生成密码库功能示例
2017/05/23 Python
mysql 之通过配置文件链接数据库
2017/08/12 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
python实现kMeans算法
2017/12/21 Python
TensorFlow模型保存/载入的两种方法
2018/03/08 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
IntelliJ 中配置 Anaconda的过程图解
2020/06/01 Python
在pycharm中使用matplotlib.pyplot 绘图时报错的解决
2020/06/01 Python
军训自我鉴定怎么写
2014/02/13 职场文书
机关干部作风建设剖析材料
2014/10/23 职场文书
教师旷工检讨书
2015/08/15 职场文书
2016年暑期教师培训心得体会
2016/01/09 职场文书
入党转正申请自我鉴定
2019/06/25 职场文书
科学家测试在太空中培育人造肉,用于未来太空旅行
2022/04/29 数码科技