手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP实现邮件群发的源码
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">

<>

</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.="rn";

$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("rn",$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邮件专题

PHP4中实现动态代理

使用PHP制作新闻系统的思路

PHP使用flock实现文件加锁的方法

PHP实现根据银行卡号判断银行

PHP实现分页的一个示例

PHP编实现程动态图像的创建

用PHP实现验证码功能

php实现屏蔽掉黑帽SEO的搜索关键字

用PHP实现文件上传

精品推荐
分类导航