在PHP中自动以固定的时间间隔从数据库发布数据

时间:2013-09-26 11:25:16

标签: php mysql

我的问题存储在我的数据库中。我想定期在24小时内自动从数据库在我的网站上发布一个问题。我有办法做到吗?

9 个答案:

答案 0 :(得分:1)

您可以使用以下步骤执行此操作:

  1. 创建发布问题的普通PHP脚本。
  2. 使用标准OS调度程序安排脚本。对于Windows,* nix(Win版本也存在)或cronAT。要定义特定间隔 - 您应该阅读调度程序手册(提供cron格式here
  3. 示例(cron)

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

    - 在这种情况下,每天02:00 AM cron将尝试执行命令/usr/bin/php /path/to/insert/script.php - 即如果您的script.php将从数据库中提取您的问题并发布 - 那将会执行这些操作

答案 1 :(得分:0)

是的,您可以使用Cron作业来完成。设置时间间隔和文件脚本位置。它将在该时间间隔内自动命中您的脚本。

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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

您应该查看MySQL日期函数。

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

SELECT * FROM questions WHERE publish_date = CURDATE()

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

答案 4 :(得分:0)

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

答案 5 :(得分:0)

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

如何设置cron作业,询问托管服务提供商,大多数主机在cpanel中都有此功能

答案 6 :(得分:0)

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

  1. 在您的网络服务器上安装某种init.php文件,该文件包含在每个页面上。该脚本将检查自上次问题以来是否已经过去,并提出一个新问题。
  2. 另一方面,你可以添加一个cronjob来执行你的php脚本推送问题。此解决方案更加强大,但需要访问您可能没有的Web服务器。

答案 7 :(得分:0)

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

答案 8 :(得分:0)

步骤

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

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

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

  3. 此语句将以24小时的周期性间隔调用AJAX函数。为此你必须知道AJAX 。我的意思是AJAX的主体应该加载你必须知道的PHP脚本。

    另一种选择

    您只需使用javascript setInterval()功能

    重新加载页面即可

    即。 <script>setInterval("window.location.reload()", 24*3600*1000);</script>之前你必须使用PHP逻辑随机选择数据库中的问题。