PHP单页面邮件群发系统程序原代码
[重要通告]如您遇疑难杂症,本站支持知识付费业务,扫右边二维码加博主微信,可节省您宝贵时间哦!
[code]
<?php
002
003 // 请求 PHPmailer类 文件
004 require_once("class.phpmailer.php");
005
006 //发送Email函数
007 function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) {
008 $mail = new PHPMailer();
009 $mail->IsSMTP(); // send via SMTP
010 $mail->Host = "smtp.163.com"; // SMTP servers
011 $mail->SMTPAuth = true; // turn on SMTP authentication
012 $mail->Username = "gemin"; // SMTP username 注意:普通邮件认证不需要加 @域名
013 $mail->Password = "gemin.com.cn"; // SMTP password
014
015 $mail->From = ""; // 发件人邮箱
016 $mail->FromName = "WWW.gemin.Com.Cn"; // 发件人 ,比如 蛤蟆工作室
017
018 $mail->CharSet = "GB2312"; // 这里指定字符集!
019 $mail->Encoding = "base64";
020
021 $mail->AddAddress($sendto_email,$user_name); // 收件人邮箱和姓名
022 $mail->AddReplyTo("","哈哈工作室");
023
024 //$mail->WordWrap = 50; // set word wrap
025 //$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment 附件1
026 //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); //附件2
027 $mail->IsHTML(true); // send as HTML
028 $mail->Subject = $subject;
029
030 // 邮件内容 可以直接发送html文件
031 $mail->Body = <<<EOT
032 <html>
033 <head>
034 <title>蛤蟆工作室订阅</title>
035 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
036 <style type="text/css">
037 <!--
038 .STYLE1 {color: #009900}
039 .STYLE3 {color: #000000}
040 a:link {
041 color: #333333;
042 }
043 .STYLE4 {color: #666666}
044 body,td,th {
045 font-family: 宋体;
046 font-size: 12px;
047 }
048 .STYLE6 {color: #FFFFFF}
049 .STYLE9 {color: #DCB003}
050
051
052
053 -->
054 </style>
055 </head>
056 <body bgcolor="#FFFFFF" >
057
058 </body>
059 </html>
060 EOT;
061 $mail->AltBody ="text/html";
062 if($mail->Send())
063 {
064 info_write("ok.txt","$user_name 发送成功");
065 }
066 else {
067 info_write("falied.txt","$user_name 失败,错误信息$mail->ErrorInfo");
068 }
069 }
070 // 发送Email函数结束
071
072 // 写入发送结果函数,错误日志记录
073 function info_write($filename,$info_log)
074 {
075 $info.= $info_log;
076 $info.="\r\n";
077 $fp = fopen ($filename,a);
078 fwrite($fp,$info);
079 fclose($fp);
080 }
081
082 //定时跳转页面 函数 其中 1000是时间,1秒, 您可以自定义
083 function redirect($url)
084 {
085 echo "<script>
086 function redirect()
087 {
088 window.location.replace('$url');
089 }
090 window.setTimeout('redirect();', 15000);
091 </script>";
092 }
093
094 //读取文本 邮件地址 您也可以读 数据库
095 $filename = "email.txt";
096 $fp = fopen($filename,"r");
097 $contents = fread($fp,filesize($filename));
098 $list_email=explode("\r\n",$contents);
099 $len=count($list_email);
100 fclose($fp);
101
102 // 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名)
103 $i = $_GET['action'];
104 $i++;
105 if ($i<$len)
106 {
107 $rs=explode("@",$list_email[$i]);
108 $user_name = $rs['0'];
109 echo "正在发送第{$i}封({$list_email[$i]})邮件......{$user_name}";
110 smtp_mail($list_email[$i], 'Treasurery Online 周刊第十二期', $body, 'http://www.yem120.com/', $user_name);
111 redirect("?action=$i");
112 }
113 else {
114 echo "邮件全部发送完毕";
115 exit;
116 }
117
118 ?>
[/code]
代码解说
PHP邮件群发程序,下面写的是能从读取文本文件进行群发邮件,你也可以从数据库里读取然后遍历即可!
但我想读email.txt文件改为连接数据库读取邮件地址--mysql! 请看红字,或者是从browse button读取也行
即:
<input type="file" name="fileField" id="fileField">
@上面的读取文章email.txt,也可以直接是qq号码,每行一个号码,然后用fget()读取每行qq号码,最后在加上qq邮箱后缀 @qq.com即可,其实php邮件群发很简单,因公司需要PHP群发邮件,所以最近在做一个PHP群发程序系统,可以自由自设置多个群发邮箱,这样群发 数量就有保证了,所有设置都桌面化,很直观操作!数量100-200之间为好~~~
问题未解决?付费解决问题加Q或微信 2589053300 (即Q号又微信号)右上方扫一扫可加博主微信
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!