我正在PHP + Mysql中開發聊天應用程序。連接到mysql時PHP超時
我的想法是我在後臺打開腳本(ajax),它會持續加載一分鐘以檢查用戶是否收到任何新消息。
這
$start = time();
while(time() - $start < 60)
{
$result = mysql_query("SELECT * FROM messages WHERE `to` = '$me_user'");
if(mysql_num_rows($result))
{
$row = mysql_fetch_array($result);
$id = $row['id'];
$from = $row['from'];
$time = $row['time'];
$msg = $row['message'];
mysql_query("DELETE FROM messages WHERE id = $id");
die("appendMsg('$msg',to,'$time');");
}
$result = null;
Sleep(2);
}
所以實際上它會檢查每2秒新的消息。
但我的問題是,整個網站開始「滯後」,因爲這一點。 我覺得問題是在睡眠()。
有時甚至在嘗試連接到數據庫時發生PHP超時。
Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\chatly\config.php on line 19
任何建議我該如何暫停2秒? 或者你認爲每2秒通過ajax發送新的請求會更好?
你爲什麼不嘗試用AJAX做呢? – Memolition
,因爲我認爲如果我的腳本加載時間爲60秒,會每2秒檢查一次新郵件,它會減少資源。 你認爲如果ajax提出請求,每個2s會更好? –
是的,用戶可以使用該頁面沒有任何滯後 – Memolition