2013-01-14 91 views
1

我有三个mysql表; Users,TasksTask_Users,其中每个用户都可以通过我在PHP中开发的Web应用程序创建他们的任务。在特定时间定期发送PHP邮件

事情是,我希望我的应用程序在任务发生前一天向用户发送电子邮件。我想到的第一件事是做一个MySQL工作或触发发送电子邮件,但我没有如何做id的想法,

什么是最好的方式使这种情况发生或我怎么能通过PHP开展工作并每天执行,并验证在获得许可之前还有一天,然后如果这是真的发送电子邮件?

这是我的表格定义。提前致谢。

Users 
---------- 
UserId,Names,email,pass 

Tasks 
------------ 
TaskId,TaskName,Descripcion,TaskDateTime 

Tasks_Users 
------------ 
TaskId,UserID 
+1

http://en.wikipedia.org/wiki/Cron可能是合适的。 – sachleen

回答

3

你可以写一个cron作业本。

什么是CRON工作?

的Cron是使得UNIX用户在指定的时间/日期自动执行命令或 脚本(命令组)的程序的名称。通常用于系统管理命令的 ,如makewhatis,它为man -k命令构建 搜索数据库,或者运行备份脚本 ,但可用于任何事情。今天它的一个常见用途是连接到 互联网和下载您的电子邮件。

你需要做什么?

只需编写一个正常的PHP脚本。做一个能够直接从浏览器启动的工具。然后安排这个非常相同的PHP文件在cron中运行,以此为指导:

如何在写完成后运行CRON作业?

http://www.inmotionhosting.com/support/edu/cpanel/301-run-cron-job

如果您有任何问题,让我知道。

+0

哪里可以得到CRON的命令列表?或每个命令意味着什么?对不起,这个虚拟的问题,但我不是一个Linux用户。 –

+0

如果你没有进入linux,只要看看教程,它会告诉你如何运行一个CRON作业以及这个视频。 http://www.youtube.com/watch?v=s7ohSPMc8EA,http://www.youtube.com/watch?v=oSmKQ8_wGdE – Techie

+0

wget -nv -O/dev null path/of/the/sendEmail.php this就是我所做的。谢谢!我已经在我的虚拟主机cPanel中设置了Cron作业,但是我怎么知道我的Cron作业是否是runnig?以及如何保存错误以防发生错误的国王出现? –

0

我会做一个定期运行脚本(比如说每5分钟?)的cron作业,它检查需要发送电子邮件的任务。然后脚本脚本发送必要的电子邮件。

*/5 * * * * php /path/to/script.php 

会每5分钟调用一次script.php来检查并发送邮件。

在cron的一些信息是在这里: http://www.pantz.org/software/cron/croninfo.html