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 相关文章推荐
很实用的一个完整email发送程序
Oct 09 PHP
php对gzip文件或者字符串解压实例参考
Jul 25 PHP
php 高性能书写
Dec 11 PHP
php方法调用模式与函数调用模式简例
Sep 20 PHP
PHP中设置时区,记录日志文件的实现代码
Jan 07 PHP
浅析php中抽象类和接口的概念以及区别
Jun 27 PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 PHP
php pdo操作数据库示例
Mar 10 PHP
微信小程序 消息推送php服务器验证实例详解
Mar 30 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
PDO::lastInsertId讲解
Jan 29 PHP
tp5.1 框架路由操作-URL生成实例分析
May 26 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
PHP 七大优势分析
2009/06/23 PHP
laravel 中如何使用ajax和vue总结
2017/08/16 PHP
PHP实现根据数组某个键值大小进行排序的方法
2018/03/13 PHP
jQuery textarea的长度进行验证
2009/05/06 Javascript
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
Jquery工作常用实例 使用AJAX使网页进行异步更新
2011/07/26 Javascript
js格式化金额可选是否带千分位以及保留精度
2014/01/28 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
javascript瀑布流式图片懒加载实例解析与优化
2016/02/23 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
Angular 应用技巧总结
2016/09/14 Javascript
浅谈Web页面向后台提交数据的方式和选择
2016/09/23 Javascript
JavaScript 闭包详细介绍
2016/09/28 Javascript
React中ES5与ES6写法的区别总结
2017/04/21 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
深入剖析Express cookie-parser中间件实现示例
2018/02/01 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
Vue实现点击按钮复制文本内容的例子
2019/11/09 Javascript
[03:12]完美世界DOTA2联赛PWL DAY6集锦
2020/11/05 DOTA
用Python代码来解图片迷宫的方法整理
2015/04/02 Python
python实现BP神经网络回归预测模型
2019/08/09 Python
python用类实现文章敏感词的过滤方法示例
2019/10/27 Python
python如何求100以内的素数
2020/05/27 Python
在keras中对单一输入图像进行预测并返回预测结果操作
2020/07/09 Python
阿迪达斯印度官方商城:adidas India
2017/03/26 全球购物
Dillard’s百货官网:Dillards.com
2018/05/26 全球购物
澳大利亚波西米亚风连衣裙在线商店:Fortunate One
2019/04/01 全球购物
秘书岗位职责
2013/11/18 职场文书
集团薪酬管理制度
2014/01/13 职场文书
公司仓管员岗位职责
2015/04/01 职场文书
市直属机关2016年主题党日活动总结
2016/04/05 职场文书
神州牡丹园的导游词
2019/11/20 职场文书
解析原生JS getComputedStyle
2021/05/25 Javascript
Redis集群新增、删除节点以及动态增加内存的方法
2021/09/04 Redis
python playwrigh框架入门安装使用
2022/07/23 Python