PHP实现邮件群发的源码
2015-01-24信息快讯网
本篇文章是对用PHP实现邮件群发的代码进行了详细的分析介绍,需要的朋友参考下
<?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中source #N问题的解决方法
php计算数组不为空元素个数的方法
php 启动时报错的简单解决方法
php制作中间带自己定义图片二维码的方法
PHP 利用Mail_MimeDecode类提取邮件信息示例
php实现邮件发送并带有附件
php 发送带附件邮件示例
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
php 检查电子邮件函数(自写)
解析PHP工厂模式的好处
解析PHP跨站刷票的实现代码
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
360通用php防护代码(使用操作详解)
浅析PHP程序防止ddos,dns,集群服务器攻击的解决办法
解析PHP计算页面执行时间的实现代码
PHPMailer邮件发送的实现代码
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
基于python发送邮件的乱码问题的解决办法
PHPMailer使用教程(PHPMailer发送邮件实例分析)
使用 PHPMAILER 发送邮件实例应用