2011-05-15 70 views
0

我需要tos和我的应用程序发送定期的电子邮件为我的社交网站。基于用户交互,电子邮件的频率将非常零星。例如,我的网站有一个QnA模块 - 我允许用户关注问题,所以每次发布答案时,问题的所有追随者都会收到一封电子邮件。寻找一个开源的cron电子邮件解决方案 - php首选

我正在考虑使用一个cron作业来实现这个功能,这个作业会以5-10分钟的时间间隔周期性地在后台运行。这个想法是,每当进行更新时,都会将条目与收件人和电子邮件正文列表一起放入数据库中。然后一个cron作业会定期检查数据库中是否有这样的作业,并执行作业将被标记为已执行的作业。

我想知道是否有什么开源的,可以帮助我在这里。我只需要在后台发送电子邮件的代码,我必须提供的所有代码都是要发送给电子邮件的数据库表以及电子邮件正文。

回答

1

Mail() with php
Sending bulk email in PHP
Sending mass email using PHP
Best way to send 10,000+ emails with PEAR/Mail_Queue
How can I debug a PHP CRON script that does not appear to be running?
Cron job to execute a PHP program

如果你已经有了数据库编写自己的php脚本并不难,只需要使用默认的邮件()或一些其他的LIB(如建议使用swift)函数,并将其从数据库中放入元素,然后使用cron运行该脚本。当然,我可能是错的,因为我是python程序员,但在我看到它只是一个邮件函数与循环和一些SQL查询,例如每分钟5邮件。

优点认为:

  • 你会学到一些东西(最有可能)。
  • 与搜索openSource替代品相比,您将花费更少的时间,这将需要一些适合您需要的编辑。
0

假设你的服务器有电子邮件(),你应该能够做这样的事

$sql = ;//Sql query to grab data 
$rs = ;// Result of sql query 
if(sizeof($rs) > 0) 
{ 
    foreach($rs as $item) 
    { 
     mail($to, $subject, $message, $headers); 
     // SQL query to update rows saying its been sent out or something like that 
    } 
}