【问题标题】:pure PHP count down? [closed]纯PHP倒计时? [关闭]
【发布时间】:2013-03-15 05:51:49
【问题描述】:

我知道有一些方法可以使用 Javascript 创建倒计时。 AJAX 等,但我正在一个网站上工作,我无法在需要此倒计时的页面中使用 javascript 代码!

基本上,我需要做的是这样的:

网站所有者上传一张图片(一次只上传一张,一天只上传一张),这张图片和它的名字和它的ID将被存储在Mysql数据库中。

现在,在网站的首页上,此图像将正确显示(此位工作正常)。我只需要知道如何在图像上传到数据库后立即使用 PHP 创建一个简单的倒计时(24 小时倒计时),并且我需要在首页的该图像下方显示这个倒计时。

首先有没有一种简单的方法可以只使用 PHP(纯 PHP 没有 javascript)?

如果是这样,怎么做?

【问题讨论】:

  • 您希望它实时更新吗?如果是这样,我认为没有 Javascript 就没有不显眼的方法。
  • 如果不能使用javascript,就不能指望页面实时更新。它可以在页面刷新时更新。你是这个意思吗?
  • @Naryl 这不是真的。
  • @Naryl <meta http-equiv="refresh" content="5"> ?
  • @LiverpoolsNumber9 根本没有 java 脚本,脚本是服务器端 php - 元标记是的,这是自 90 年代以来可用的标准功能

标签: php html mysql


【解决方案1】:

一种可能性是gifsockets。它们通过流式传输实时生成的 GIF 来发挥作用。您可以每秒(分钟,等等)生成一个新帧并将其发送给客户端。 https://github.com/reactphp/gifsocket 有一个 gifsockets 的 PHP 端口。虽然这确实是对一个深奥问题的深奥答案。

【讨论】:

    【解决方案2】:

    虽然我会推荐 javascript,但由于我很无聊,我认为这可能是一个有趣的练习。假设您可以访问 $_GET[] 数组,您可以将计数器变量传递给脚本,该脚本返回对自身的引用,并带有递减参数:

    <?php
      if(isset($_GET['counter']))
      {
        $counter=intval($counter)-5;
      }
      else
      {
        $counter=100;
      }
      if($counter<0) {
        //todo, insert what to do on time is 0
      }
    ?>
    <meta http-equiv="refresh" content="5;URL='http://example.com/?counter=<?php echo $counter; ?>">
    

    我仍然推荐不同的解决方案

    【讨论】:

    • 你提到的任何例子?
    • 我刚刚添加了代码...尽管正如我在帖子中所说,我不推荐它 - 大多数浏览器都支持 javascript
    • 它没有多大意义,但无论如何谢谢.. 至少你已经回答了(即使它是出于你的无聊)而不是投反对票和一堆无用的 cmets...
    • 只要将 example.com 替换为服务器端 url,它就应该可以工作。元刷新标签基本上告诉浏览器将页面重新加载到指定的 url。您在 url 中包含计数器值作为 get 参数。每次页面加载时,get 参数都会减少,它会重定向到页面 - 除非计数器值较低
    • @YounElan 假设加载页面需要额外的时间。然后倒计时关闭一秒钟。必须经过实际时间才能准确倒计时。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    • 2015-01-20
    • 1970-01-01
    相关资源
    最近更新 更多