2

我有问题存储在我的数据库中。我想每隔 24 小时自动从数据库中定期在我的网站上发布一个问题。有没有办法我可以做到这一点?

4

9 回答 9

1

您可以通过以下步骤执行此操作:

  1. 创建将发布您的问题的普通 PHP 脚本。
  2. 使用标准操作系统调度程序调度您的脚本。它是*nix的cron (也存在 Win 版本)或 Windows 的AT。要定义特定的时间间隔 - 您应该阅读调度程序的手册(此处cron提供格式)

示例(cron)

0 2 * * * /usr/bin/php /path/to/insert/script.php

- 在这种情况下,每天在02:00 AMcron 将尝试执行命令/usr/bin/php /path/to/insert/script.php- 即,如果您script.php将从数据库中提取您的问题并发布它 - 这将做的事情。

于 2013-09-26T11:28:42.200 回答
0

是的你可以。我将简要概述两种最常见的解决方案。困难在于 PHP 不是一个始终运行的程序,而是一种按请求执行然后在完成时关闭的语言。

  1. 在您的网络服务器上有某种 init.php 文件,该文件包含在每个页面中。该脚本将检查自上一个问题以来是否已过时间,并推送一个新问题。
  2. 另一方面,您可以添加一个 cronjob,它将执行您的 php 脚本来推送问题。此解决方案更强大,但需要访问您可能没有的网络服务器。
于 2013-09-26T11:30:54.960 回答
0

创建一个 php 文件,将代码从您的数据库中获取问题,然后设置 cronjob 以在特定时间执行该文件,或者您也可以通过包含您的登录名或任何其他页面来执行文件,该文件首先包含该 php 文件文件,以便当第一个用户登录它将执行。

于 2013-09-26T11:35:37.493 回答
0

是的,您可以使用 Cron job 来做到这一点。设置时间间隔和您的文件脚本位置。它会在该时间间隔内自动命中您的脚本。

这是很好的教程:http ://docs.phplist.com/SetupCronJob.html

于 2013-09-26T11:27:31.587 回答
0

如果您可以创建一个 PHP 脚本来每次选择不同的问题,那么您需要做的就是设置一个 cron 来每 24 小时运行一次 PHP 脚本。您可以在此处找到有关 cron 的更多信息。

于 2013-09-26T11:28:35.497 回答
0

您应该查看 MySQL 日期函数。

一个人为的例子是使用CURDATE()

SELECT * FROM questions WHERE publish_date = CURDATE()

存储publish_date遗嘱意味着您可以在该日期到来时动态加载问题。

于 2013-09-26T11:29:05.467 回答
0

正确执行此操作的唯一方法是使用 cron 作业。您应该查看托管服务的管理面板。

于 2013-09-26T11:29:16.273 回答
0

编写一个脚本,每天在您的网站上发布一个问题,并设置一个 cron 作业以每天运行一次该脚本,然后您就完成了。

如何设置cron作业,问你主机服务商,大部分主机在cpanel都有这个功能

于 2013-09-26T11:29:22.773 回答
0

脚步

  1. 创建一个 PHP 脚本以随机选择和发布特定问题

  2. 在您的主 php 脚本中编写一个 AJAX 方法(它将加载PHP 脚本),可以setInterval()使用以下语法调用该方法 -

    setInterval("AJAX_fun()", 24*3600*1000);

该语句将以 24 小时为周期调用 AJAX 函数。为此,您必须了解 AJAX。我的意思是 AJAX 的主体应该是什么来加载你必须知道的 PHP 脚本。

另一种选择

您可以使用 javascriptsetInterval()函数简单地重新加载页面

<script>setInterval("window.location.reload()", 24*3600*1000);</script>在此之前,您必须使用 PHP 逻辑从数据库中随机选择一个问题

于 2013-09-26T11:47:41.817 回答