当Javascript时间事件激活时触发PHP函数

时间:2014-02-12 06:16:52

标签: javascript php timer

是否可以使用Javascript每分钟左右触发一次php函数而无需转到其他页面?

1 个答案:

答案 0 :(得分:1)

您可以在PHP脚本中创建一个循环并使用sleep()函数。

sleep() here

的文档

或者你可以那样做

var milliSeconds = 6000;

setInterval( function() {

var xmlhttp;

if (window.XMLHttpRequest) // code for IE7+, Firefox, Chrome, Opera, Safari
{
    xmlhttp=new XMLHttpRequest();
}
else
{
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); // code for IE6, IE5
}

xmlhttp.onreadystatechange=function()
{
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
      {
         console.log ( xmlhttp.responseText );
      } 
}

xmlhttp.open("POST","functions.php",true);
xmlhttp.send();


}, milliSeconds);

您必须根据浏览器加载xmlhttp请求对象(xmlhttp = new XMLHttpRequest();),然后在xmlhttp状态更改时设置事件处理程序(xmlhttp.onreadystatechange = function())。当它改变时检查状态是否为200(成功),然后对响应做任何你想做的事情。 (我把它打印到控制台)