【发布时间】:2014-03-06 17:59:46
【问题描述】:
我编写了一个根据创建日期检查记录的应用程序, 我需要从应用程序中自动检查发布日期,如果是的话 超过或等于 2 天,它将发送通知电子邮件,无需用户或管理员执行任何操作。
我知道 crontab 解决方案,但我知道它在指定时间工作。我怎样才能满足我的需求?
MySQL 发布表
id | post | date
1 | post 1 | 1394094854
2 | post 2 | 1394094754
3 | post 3 | 1394094654
4 | post 4 | 1394094554
我的脚本.php
<?php
define('DBHOST', 'localhost');
define('DBNAME', '-');
define('DBUSER', '-');
define('DBPASS', '-');
/*
/ $db ====> mysql connection
*/
$getPosts = $db->query("SELECT * FROM posts");
foreach($gp as $getPosts){
if(time() - $gp['date'] >= 172800){ // morethan or equal 2 days
// send notification email
mail('TO_EMAIL', 'SUBJECT', 'MESSAGE', 'HEADERS');
}
}
请在这个问题上帮助我。 此致 萨米·曼苏尔
【问题讨论】:
-
你知道你可以使用
crontab每5分钟左右运行一个脚本吗? -
您需要根据您的逻辑创建一个shell脚本,然后您可以安排crontab在特定时间调用该脚本。邮件根据脚本中满足的条件发送
标签: php mysql email date crontab