通过JS,我每4秒运行一个函数。该函数使用online从调用的handler.php向handler.php发送一些数据。
在第一次加载时,将创建行。但我认为每隔4秒就应该插入新的一行。难道不应该这么做吗?
我漏掉了什么?
setTimeout ( "iAmHere()", 5000 );
function iAmHere() {
requestServerCall("http://domain.com/handler.php?type=active&callback=Response&cookie="+ hash +"");
setTimeout ( "iAmHere()", 4000 );
}handler.php
if ($_GET["type"] == 'active') {
mysql_query("INSERT into `active` (`hash`) values ('$hash')");
}Update:我第一次等待5秒来运行它是因为我等待hash变量。
发布于 2015-05-09 01:34:31
您可以使用setInterval
setInterval(iAmHere, 5000);
function iAmHere() {
requestServerCall("http://domain.com/handler.php?type=active&callback=Response&cookie="+ hash +"");
}编辑:
如果你不在其他地方使用iAmHere(),你可以像这样把它们放在一起:
setInterval(function() {
requestServerCall("http://domain.com/handler.php?type=active&callback=Response&cookie="+ hash +"");
}, 5000);发布于 2015-05-09 01:32:04
不要使用嵌套的setTimeout语句,这是导致堆栈大小错误的原因。使用setInterval()方法。
function foo(){
.....
}
setInterval(foo, 4000);发布于 2015-05-09 01:23:48
试试setInterval ( iAmHere,5000 );
https://stackoverflow.com/questions/30134978
复制相似问题