【问题标题】:Holding php function for 4 second and then refresh the page按住php函数4秒然后刷新页面
【发布时间】:2014-03-21 07:44:29
【问题描述】:

我想保持一个 echo 函数 4 秒,然后刷新 php 页面,但 sleep() 函数保持所有 echo 函数,然后刷新页面。 这是我的代码我该如何解决?

if($sql_new!='')
{
  $_SESSION["count"]="";

  echo "<div class='cleaner h30'></div>";
  echo "<b'>Inbox informations Submitted successfully!</b>";
  sleep(4);
  echo "<meta http-equiv=\"refresh\" content=\"0;URL=inbox.php\">";    
}

【问题讨论】:

  • 你知道sleep是做什么的吗?
  • 是的,但我虽然 sleep 只会停止脚本并运行其余部分,但我错了。

标签: php function sleep page-refresh


【解决方案1】:
echo "<meta http-equiv=\"refresh\" content=\"4;URL=inbox.php\">";

把0改成4就可以了

【讨论】:

    【解决方案2】:

    从您的 PHP 中删除睡眠代码 - 它只是延迟 HMTL 到浏览器的输出。就是代码中的meta标签需要在页面加载完4秒后触发浏览器刷新页面。

    echo "<meta http-equiv=\"refresh\" content=\"4;URL=inbox.php\">";
    

    【讨论】:

      【解决方案3】:

      只是另一种解决方案:有一种方法可以存档您正在尝试做的事情。您只需确保您在sleep 之前回显的内容在您睡觉之前已经发送到浏览器。你可以这样做:

      • 致电flush()
      • 确保没有输出缓冲处于活动状态,无论是在 PHP 中还是在您的网络服务器中
      • 在您的网络服务器配置中禁用压缩响应
      • 在您的网络服务器配置中禁用压缩响应
      • 禁用可能存在的缓存机制。

      不是说你应该这样做,只是你可以

      【讨论】:

      【解决方案4】:

      这是我努力重定向的内容。似乎工作正常,并认为我会分享。

      DelayTime(15); 
      
      echo "<script>window.top.location.reload();</script>";
      

      延迟时间函数:

      function DelayTime($secs){
            $now = time();
            while($now < ($now + $sec)){ 
              $now = time();
              if($now >= ($now + $sec)){ break; }
            }
            return true;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-02-08
        • 2015-07-25
        • 1970-01-01
        • 2020-01-13
        • 2012-06-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多