在特定时间定期发送带有PHP的邮件

时间:2013-01-14 05:28:13

标签: php mysql triggers cron

我有三个mysql表; UsersTasksTask_Users,每个用户都可以通过我正在使用PHP开发的Web应用程序创建任务。

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

实现这一目标的最佳方法是什么?或者我如何通过PHP调用工作并每天执行它并确认在开始之前只剩下一天然后如果是真的发送电子邮件?< / p>

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

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

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

Tasks_Users
------------
TaskId,UserID

2 个答案:

答案 0 :(得分:3)

你可以为此写一个CRON作业。

什么是CRON作业?

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

您需要做什么?

只需编写一个普通的PHP脚本即可。如果它直接从浏览器启动,那么可以使用一个。然后安排在cron中运行相同的PHP文件,使用它作为指南:

如何在编写CRON作业后运行它?

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

如果您有任何问题,请告诉我。

答案 1 :(得分:0)

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

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

每5分钟调用一次检查和发送电子邮件的script.php。

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