通过JS我每4秒运行一次功能。此函数使用称为handler.php
的PHP将一些数据发送到online
mySQL表。
在第一次加载时,将创建该行。但是我认为应该每4秒插入一排新行。不应该这样做?
amn我错过了什么?
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')");
}
更新:我等待5秒才能第一次运行它的原因是因为我等待hash
变量。
不使用嵌套的settimeout语句,这就是导致堆栈尺寸错误的原因。使用setInterval()方法。
function foo(){
.....
}
setInterval(foo, 4000);
您可以使用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);
尝试setInterval(iamhere,5000);