2014-02-20 48 views
0

我想持有4秒的回聲功能,然後刷新php頁面,而sleep()函數保存所有的回聲函數,然後刷新頁面。 這是我的代碼我該如何解決這個問題?持續4秒的php功能,然後刷新頁面

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\">";  
} 
+0

你知道什麼是'sleep'辦? –

+0

是的,但我雖然睡眠只會停止腳本,並運行其餘的,但我錯了。 – anonymox

回答

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

變化0-4可以做到這一點

+0

thanx它的工作,並沒有需要睡眠(); – anonymox

+0

不需要睡眠刪除它 –

0

從PHP中刪除睡眠代碼 - 它只是延緩了HMTL的輸出到瀏覽器。它是代碼中的元標記,需要更新以觸發瀏覽器在頁面加載4秒後刷新頁面。

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

只是另一種解決方案:有一種方法來存檔你正在triying做什麼。 YOu只需確保在睡覺之前,您在sleep之前回顯的內容已發送至瀏覽器。你可以這樣做:

  • 調用flush()
  • 確保沒有輸出緩衝是活躍的,無論是在PHP也不在你的網絡服務器
  • 禁止放氣反應在你的網絡服務器配置
  • 禁用壓縮回復您webserver config
  • 禁用可能存在的高速緩存機制。

不是說你應該做到這一點,只是你可以

+0

fluch()究竟做了什麼? – anonymox

+0

它被稱爲'flush',很容易查找:http://php.net/manual/en/function.flush.php –

0

這是我努力重新定向的東西。似乎工作正常,並認爲我會分享。

DelayTime(15); 

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

的DelayTime功能:

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