PHP實現郵件群發的源碼

來源:互聯網
上載者:User

複製代碼 代碼如下: <?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即可

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.