每周运行一次PHP脚本

3
每个星期一,我需要清空我拥有的 MYSQL 数据库中的几个字段。
首先我考虑使用 cron job,但我的 Web Hosting 服务提供商 (fatcow.com) 不支持在共享服务器上使用 SSH 或命令行。
我也考虑过检查日期 () 是否为星期一并执行某些操作,但是那么我就需要不断地运行特定页面,而我已经读到这是一个问题。
所以现在我问你,我该如何做?
感谢您的回答。

Fat Cow(顺便说一下,我喜欢他们的口号,“完美无瑕的网络托管”)支持cron jobs吗? - Pekka
是的,我需要,但它们不支持 Cron Jobs。 - David Pollak
6个回答

3

如果您可以访问其他允许运行cron作业的服务器,您可以在那里创建一个php文件,并从该服务器运行要执行的url。使用curl、wget或streams来完成此操作。


2
如果你可以访问其他允许使用cron的服务器,因为FatCow不允许使用它,你可以创建一个cron job,在你的服务器上调用一个php脚本 -- 例如 wget http://example.com/fake-cron.php。请注意保留HTML标签。

1

应该可以在MySQL本身设置某种类型的作业。不是100%确定,但已经阅读了相关资料。

CREATE EVENT something ON SCHEDULE

也许你可以从MySQL中找到一种方法来实现它,而不是使用PHP。很抱歉我不能提供更多帮助,只是觉得你可能想要去检查一下。

MySQL事件


1
如果您的工作可以通过URL访问,您可以尝试使用免费的crontab服务注册,比如onlinecronjobs.com。

1
这不是一个好的答案,它对我或任何想手动运行cron脚本的人都没有帮助。 - Sterling Archer

0
那个主机有什么控制面板?cPanel吗?如果是的话,几乎所有的cPanel都有一个高级Cron工具。还可以通过从php脚本中执行execsystem命令来设置Cronjob(除非这就是你所说的不支持“命令行”的意思)。

执行/系统命令可能被禁用。cPanel肯定有cron功能,但许多其他面板也可能具有该功能。 - JP19
永远不试怎么知道。我认为我从未遇到过被禁用的主机,至少没有付费主机。但用户可能没有权限设置cronjob。 - Phoenix
所以我联系了他们,他们说他们不支持 Cron Jobs,你有任何可能的解决方案吗? - David Pollak
如果整个系统不支持cron jobs,这真的很奇怪。那就按照goreSplatter的答案,使用http://www.onlinecronjobs.com/。 - Phoenix

0
如果您可以访问另一台带有ssh的服务器,只需在其上添加一个cron作业,每周运行一次您的php脚本。 不幸的是,我认为没有直接在您的php脚本上执行此操作的方法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接