我需要在我的服務器上運行一個PHP腳本來經常請求一個網頁。如何經常使用PHP刷新特定網頁?
我想過使用PHP header
函數結合元刷新標記,但這將無法正常工作,因爲標題將立即重定向到URL,並且元刷新將永遠不會執行。
<?php
header('Location: http://www.example.com/');
?>
<html>
<META HTTP-EQUIV=Refresh CONTENT="60">
</html>
有沒有人有任何建議如何做到這一點?
我需要在我的服務器上運行一個PHP腳本來經常請求一個網頁。如何經常使用PHP刷新特定網頁?
我想過使用PHP header
函數結合元刷新標記,但這將無法正常工作,因爲標題將立即重定向到URL,並且元刷新將永遠不會執行。
<?php
header('Location: http://www.example.com/');
?>
<html>
<META HTTP-EQUIV=Refresh CONTENT="60">
</html>
有沒有人有任何建議如何做到這一點?
如果我正確理解您的問題,您希望每次在某個超時後自動刷新頁面。
由php代碼生成的頭文件旨在直接重定向到某個URL,因此將其取出是因爲您無法以這種方式設置超時。 它是客戶端(即查看頁面的瀏覽器)必須在超時後重新加載頁面,而不是Web服務器。服務器端腳本(比如PHP)不會幫助你。
客戶端可以指示使用<META ...>
標籤,或用一些JavaScript重新加載頁面:
<script type='text/javascript'>
setTimeout(function() {
window.location.reload(true);
}, 60000); // reload after 60 seconds
</script>
有人在這個問題上的所有答案以及問題本身downvoted ... – Josh 2010-05-19 14:01:44
是的,我有同樣的感覺...只是一些巨魔。我們如何再次對上對方;) – catchmeifyoutry 2010-05-19 14:19:15
@catchmeifyoutry:+1:當然,爲什麼不呢? :-) – Josh 2010-05-19 15:26:22
如果你想獨自做到這一點使用PHP,你需要改變你的解決方案位。不用發送HTTP Location:
標題,而是將用戶從頁面重定向,您需要使用file_get_contents
將遠程內容加載到變量中。然後,您可以重寫所有URL並將刷新標記插入到HTML中,並輸出該標記。
更簡單的解決方法是製作一個iframe
並將其設置爲使用JavaScript進行刷新。如果你喜歡,我可以提供一個代碼示例,請問。
您是否試圖將用戶移動到另一個頁面或運行腳本? – tylermac 2010-05-19 13:28:14
你需要什麼樣的腳本? – 2010-05-19 13:28:35
我清理了一下你的問題,以幫助減少downvotes,我希望你不介意。 – Josh 2010-05-19 15:31:01