如何让服务器在执行某些数据库操作后执行操作?

时间:2014-09-09 20:12:05

标签: php sql timestamp

标题可能有点不清楚。但我的网站有这个问题。我有一些数据存储在sql数据库中,包括时间戳。但现在我需要对该数据进行一些计算并在该时间戳之后的一段时间后发送电子邮件。但是我该怎么做?由于我的网站和我的数据库只包含静态数据...

所以要明确:我有一个与数据库共享托管的站点。在该数据库中,所有项都包含时间戳值。现在我需要服务器在该项目的时间戳之后的某个持续时间内对数据库中的每个项目执行操作,例如发送邮件。

这可能是一个简单的问题,但我不知道该寻找什么......

编辑:我想我已经通过使用setcronjob.com找到了解决方案,谢谢!

3 个答案:

答案 0 :(得分:1)

您可能希望使用Cron任务在数据库中搜索时间戳接近当前时间的每一行。从那时起,您可以简单地进行计算并发送电子邮件。

你能告诉我更多关于那个"那个时间戳之后的某段时间"?

答案 1 :(得分:1)

此外,在数据库中,您可以设置按计划运行的作业,以进行计算并通过电子邮件发送结果。

答案 2 :(得分:1)

您可以经常运行一项工作,以确定该时间戳的年龄,然后发送您需要发送的电子邮件。但是如何运作呢?

  • 如果您可以在主机上运行预定作业(即您拥有机器/ VM但不在共享主机上),则可以每x天/小时/分钟/秒运行这些作业。在Linux中,查找cron作业,Windows查找任务计划程序(我认为)
  • 如果您正在共享托管,那就更难了。也许您可以将一些静态页面转换为运行这些作业的动态页面?根据运行时间长短,您可能希望在新线程(pthreads)中查看运行这些作业。你需要在你的托管上安装pthreads,所以#1 - 预定的工作 - 肯定更合适。