PHP + jQuery + MySQL异步获取数据,脚本结束意外

时间:2012-09-27 03:31:57

标签: php jquery mysql polling

我正在尝试使用jQuery的$ .ajax()来获取基于时间间隔的PHP页面,该页面打印来自MySQL表的最新输入。如果有新的企业,它们会打印在页面上,否则会打印出“NaN”。

这是我的PHP函数,用于检查新的输入:http://pastebin.com/R6NHDU3t
这是HTML + jQuery,它检查来自上面函数的响应(从Stack上的一些答案得到它):http://pastebin.com/myT7evAx

这个想法是这样的:我访问HTML页面,里面的jQuery是每3秒获取一次PHP页面,PHP检查MySQL内部的新进入;如果有新的enteries,它们打印在PHP页面上并被jQuery获取,然后附加到#messages中,如果没有,则打印“NaN”(因为JSON,doesen't不重要)。

如果没有可用的新设置,这样可以正常 :每隔3秒就会在页面上打印“NaN”;一些实时HTTP标头:

http://localhost/handler.class.php?Q=comments&_=1348715334458

Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
X-Requested-With: XMLHttpRequest
Referer: http://localhost/live.html

HTTP/1.1 200 OK
Date: Thu, 27 Sep 2012 03:08:54 GMT
Server: Apache/2.2.22 (Win32) PHP/5.3.13
X-Powered-By: PHP/5.3.13
Content-Length: 15 <---- the "NaN", no new data
Keep-Alive: timeout=5, max=97
Connection: Keep-Alive
Content-Type: text/html

如果新的进入,脚本会停止附加“NaN”(doh,新数据),并且它会附加我的新进入,但脚本会停止,不会附加新数据并且停止发出请求。这是最新的Live HTTP Headers日志,显示上一个请求:

http://localhost/handler.class.php?Q=comments&_=1348715337473

GET /handler.class.php?Q=comments&_=1348715337473 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1
Accept: */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
X-Requested-With: XMLHttpRequest
Referer: http://localhost/live.html

HTTP/1.1 200 OK
Date: Thu, 27 Sep 2012 03:08:57 GMT
Server: Apache/2.2.22 (Win32) PHP/5.3.13
X-Powered-By: PHP/5.3.13
Content-Length: 3257 <-- new data, so it got the response, but stopped here. no appending, no more requests.
Keep-Alive: timeout=5, max=96
Connection: Keep-Alive
Content-Type: text/html

为什么在handler.class.php?Q=comments返回新数据时它会停止?

0 个答案:

没有答案