【问题标题】:Auto add to database on last day of month每月最后一天自动添加到数据库
【发布时间】:2009-09-22 05:58:24
【问题描述】:

我有一个数据库来存储我的员工所做的工作。我运行的一个特定查询会根据我为他们记录的小时数告诉我当月(当月至今)我欠他们多少钱。但是,出于各种原因,我想将这些信息本身存储到一个表中,尤其是要记录我是否真的为此支付了费用。

我希望我的系统在该月的最后一天自动运行此查询并将其值输入到付款表中。我的系统正在使用 php & mysql。

【问题讨论】:

    标签: php mysql automation cron


    【解决方案1】:
    1. 设置一个可通过 Web 访问的控制器操作或脚本,并执行您希望它执行的任何操作。让它除了标题之外不产生任何输出。

    2. 设置一个 cron 作业,执行类似“wget http://yourservername.net/do/this/thing”的操作。人们可能会告诉你改用 curl,但我只是喜欢 wget。 您可以通过添加来完成此操作

      42 4 1 * * "wget http://(your url here)"

      到你的 crontab。

    3. cron 作业将联系您的服务器并执行操作。

    如果您不能使用 cron,您可以简单地在数据库行中记录该操作的最后完成时间,并在每次请求/登录/会话时,检查该时间是否大于/等于一个月前——如果是,那么您再次执行该命令并更新数据库行。

    【讨论】:

      【解决方案2】:

      这可以使用 cron 来完成。我会尽快准备一个更详细的答案。

      【讨论】:

      • 您对您的服务器有 root 访问权限吗?
      • cron 使您能够在指定的时间/日期自动运行脚本。
      • 我当前的网络服务器不允许我访问 root 或 cron - 但我可能会转而由朋友的公司托管 - 他会做任何不会损害安全性的事情
      猜你喜欢
      • 2020-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多