使用Cron Job每分钟更新一次表格行

时间:2013-08-11 03:02:00

标签: php mysql joomla cron

我正在尝试在crondate(时间戳字段)和当前时间戳匹配时每分钟更新一次表行。当两者匹配时,我设置state = 0但不起作用。我检查了cronjob,它正在工作并执行每个迷你。

我会感激如果有人可以帮助我。

我的代码:

function runCronJob(){  
    $timestamp = date('Y-m-d H:i:s');

    $db =& JFactory::getDBO();
    $update_query = "UPDATE #__cronjob_run SET state=0 WHERE crondate = '$timestamp'";
    $db->setQuery($update_query);
    $db->query();

}

Mt Table

1 个答案:

答案 0 :(得分:1)

我不确定为什么你需要比较日期,所以我只是假设你想要更新那些创建的第二行。

我相信你使用MySql Events会更容易,因为你不必担心时区,因为它是同一时间,基本上它运行一个cron本身,你有基本相同的选项。

另一个优点是运行起来会更快,因为不需要运行PHP。

由于我发现您正在使用PHPMyAdmin,请转到您的数据库 - >活动 - >添加事件,从那里它非常直接。

这将使您的查询类似于:

UPDATE #__cronjob_run SET state=0 WHERE crondate = now()