[代码] php代码
001 | <?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 = "jessiejl" ; // SMTP username 注意:普通邮件认证不需要加 @域名 |
013 | $mail ->Password = "1983106" ; // SMTP password |
014 |
015 | $mail ->From = "" ; // 发件人邮箱 |
016 | $mail ->FromName = "WWW.NIUTW.COM" ; // 发件人 ,比如 唯美搭配网 |
017 |
018 | $mail ->CharSet = "GB2312" ; // 这里指定字符集! |
019 | $mail ->Encoding = "base64" ; |
020 |
021 | $mail ->AddAddress( $sendto_email , $user_name ); // 收件人邮箱和姓名 |
022 | $mail ->AddReplyTo( "" , "Web之家" ); |
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>Treasurery Online 周刊</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 | ?> |
[代码] 小思维
1 | 上面的读取文章email.txt,也可以直接是qq号码,每行一个号码,然后用fget()读取每行qq号码,最后在加上qq邮箱后缀 @qq.com即可 |