Ajax监视数据库的更改并执行代码

Ajax watch database for changes and execute code

本文关键字:执行 代码 监视 数据库 Ajax      更新时间:2023-09-26

我的目标是或多或少发送请求到一个php文件,给它的参数如下;

<!DOCTYPE html>    
<html>    
<head>    
<script>
function onsubmit()
{
var id = $_SESSION['user']['id'];
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    window.WhateverVariable = xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","clientrequest.php?id="+id,true);
xmlhttp.send();
}
</script>
</head>
<body>
</body>
</html>

并继续发送请求,直到PHP脚本返回x值,该值将被传递到窗口中。当WhateverVariable等于'x'时,我希望执行一些代码;

然而,我可以实现这一点,但是当代码被执行时,请求仍然在进行,这意味着响应文本将是'x',并且将不断地破坏然后重新执行代码,有任何方法可以通过这个?

if ( the_mini_game_is_not_open() )
{
    // send the regular ajax request
} else {
    // send the ajax request but with the message that the mini game is open through parameters maybe like ?open=1
}

在服务器端这样处理:

if ( isset ( $_GET['open'] ) && $_GET['open'] === 1 )
{
   // pause it or whatever...
} else {
   // show the regular results
}

这就是我所理解的。抱歉,如果这不是你想要的