Demo.php文件更新div標籤,如果html文件更新?
<?php
function write_back()
{
echo file_get_contents("sample.html");
sleep(2);
write_back();
}
write_back();
?>
導致我這個錯誤Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\omnama\demo.php on line 8
我從PHP腳本的HTML內容的迴音,爲每2秒Ajax請求。
Demo.html文件
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","demo.php",true);
xmlhttp.send();
}
讓我解釋什麼,我試圖做的。我有一個不斷更新的sample.html文件,它可能包含當前登錄的用戶數量或可用於討論的人數等等。
我已經使用了一個html文件,因爲無論何時一個新用戶登錄,該html文件將更新爲使用PHP文件概念的用戶名,然後這些html文件應該更新爲所有在線用戶。所以即時更新<div id="myDiv">
標籤與反應給出的demo.php文件
我已經使用HTML文件,因爲每次請求MySql檢查是否有人登錄,將導致嚴重的服務器問題,這就是爲什麼我想使用HTML文件。但回聲文件內容每次都給我這些錯誤。
我正在考慮這樣做。只需檢查文件的上次修改時間,如果與上一次修改時間不同,則回顯其內容,這是正確的方法嗎?
任何人都可以解釋我如何跟蹤sample.html並將其內容更新到登錄用戶?我需要一些幫助。謝謝
我可能錯過了這個問題,但爲什麼不使用JavaScript的setInterval來執行每個間隔的新的ajax請求? -http://www.w3schools.com/jsref/met_win_setinterval.asp - 編輯:好吧,我現在已經知道了,我會在下面寫出更完整的答案... – mobius 2012-01-11 09:26:49
@mobius同樣的錯誤報告 – niko 2012-01-11 09:43:04
這個想法與setInterval將從服務器端刪除睡眠(2)並將其放置在瀏覽器上。但看到我的完整答案更多。 – mobius 2012-01-11 09:52:05