如何在php中自动执行查询

时间:2013-12-19 17:10:20

标签: php mysql sql

有没有办法在30天后自动执行SQL查询?实际上我想在没有手动编辑的情况下将帐户的状态从活动状态更改为非活动状态

5 个答案:

答案 0 :(得分:2)

您需要使用cronjob,编辑 / etc / crontab 文件来设置新作业,如:

0 0 30 * * apache php /path/yourScript.php

这将在每月30日执行。

答案 1 :(得分:1)

MySQL 5.1.6+有Event Scheduler

如果您使用的是早期版本,则可以编写一个执行所需SQL的小脚本,并使用at,cron或类似版本进行安排。

答案 2 :(得分:1)

您可以在mysql中使用Event Scheduler

答案 3 :(得分:0)

  CREATE EVENT e_hourly
        ON SCHEDULE
          EVERY 1 HOUR DO ***your update query here*** 

答案 4 :(得分:0)

你必须在服务器上设置一个cronjob,就像Ignacio Ocampo说的那样。

在您的数据库中,您必须创建一个列(last_activity)来跟踪用户上次登录的时间(我建议使用unix时间戳)

然后,在将运行cronjob的PHP脚本上,更新行,例如:

PHP:$timestamp = time() - 60 * 60 * 24 * 30;

SQL:UPDATE users_table SET active = 0 WHERE last_activity < $timestamp