用PHP实现邮件群发
今天在做一个网站后台的时候,要实现一个邮件群发的功能,而对于PHP来说,这个功能实现起来是很简单的,所以就写了一个最简单的,就是从数据库中读取邮箱地址列表,然后通过php的mail函数来循环发送邮件。这里必须说明的一点是要想能够发送邮件,服务器上必须有相应的邮件服务器做支持才可以。
部分代码如下:
$subject=$_POST["subject"];
$content=$_POST["content"];
if(empty($subject) || empty($content)){
$RESULT["msg"]="请输入邮件内容!";
}else{
//如果信息有效,则发送邮件
require_once("inc/db.inc.php");
$sql="SELECT * FROM email WHERE mark=0";
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
mail($row["email"],$subject,$content,$headers);
mysql_query("UPDATE email SET mark=1 WHERE email='".$row["email"]."'");
}
}
$content=$_POST["content"];
if(empty($subject) || empty($content)){
$RESULT["msg"]="请输入邮件内容!";
}else{
//如果信息有效,则发送邮件
require_once("inc/db.inc.php");
$sql="SELECT * FROM email WHERE mark=0";
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
mail($row["email"],$subject,$content,$headers);
mysql_query("UPDATE email SET mark=1 WHERE email='".$row["email"]."'");
}
}
上面是最简单的一段代码,简单到很少人会直接用这么一段代码,所以我的程序也是在这个基础上做了很多的改动。由于群发邮件是一个比较慎重的问题,所以完整的代码我就不放出来了,如果有特殊的需要的朋友可以给我发邮件,并说明使用用途,请一定要把程序用到正规的地方,如有其他想法,恕不奉送!因用本程序群发邮件带来的一切法律问题,由当事人负责。
#update 2008-8-13:由于程序有点小问题,暂停止程序发送。
【本站遵守CC协议,转载本站文章请注明原文地址和原作者,谢谢】





June 25th, 2008 at 2:23 pm
请给我一份代码,我想学习一下用php发邮件要注意的问题,可以吗?
lveyoly@gmail.com
July 29th, 2008 at 8:16 pm
hey 哥们,你的博客貌似没有显示发文日期
这个程序可否发我一份?我做电子杂志的,有一些用户订阅,当新一期杂志出来的时候,我希望用邮件通知我的注册用户。这样的群发不违法吧
我的邮箱 youfor.com[at]gmail[dot]com
December 18th, 2008 at 1:07 pm
我是做物流行业的。。想用PHP实现邮件群发。用途在管理客户员工等关系等。。。
谢谢发一份给我。224454477@qq.com
February 12th, 2009 at 6:04 pm
可以给我个源码吗 我想学习学习
February 14th, 2009 at 12:58 am
对不起,现在不送了。
June 19th, 2009 at 2:30 pm
假牙,那是要服务器支持的,国内的服务器基本都发不走!
November 5th, 2009 at 1:34 pm
这个发送少量的邮件会正常,但是如果数量级上升到几千那么就会有问题了,首先脚本的执行时间需要设置,然后就是浏览器会加载不了页面的问题,如果服务器端长时间没有返回运行结果就会显示页面无法加载或者显示,但是脚本后台还在执行,这个要怎么处理呢?
博主交流下,可以直接email,谢谢了