【问题标题】:Ajax time interval call to a php functionAjax时间间隔调用一个php函数
【发布时间】:2012-05-25 15:03:19
【问题描述】:

我有一个调用 php 文件的 ajax 代码:

function ajaxRequest(){
var requestData; 

try{
    // Opera 8.0+, Firefox, Safari
    requestData = new XMLHttpRequest();
} catch (e){
    // IE
    try{
        requestData = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try{
            requestData = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e){
            // Your browser is brokeded.
            alert("Please try again later!");
            return false;
        }
    }
}
// Send/receive data
requestData.onreadystatechange = function(){
    if(requestData.readyState == 4){
        document.getElementById("testDiv").innerHTML = requestData.responseText;
    }
}
requestData.open("GET", "tester.php", true);
requestData.send(null); }

我实际上想要代码做的是在同一页面上每隔一段时间调用一个 php 函数。我打算在向 mysql 数据库中的表中添加新行时显示通知。请帮我编辑此代码,或者如果上述不正常,可能是一个新代码。我将不胜感激。谢谢

【问题讨论】:

  • 把这个函数放在 setInterval 中怎么样?

标签: php ajax


【解决方案1】:

我建议你使用 jQuery,它是一个提供多种功能的 js 框架。您的代码示例如下:

函数调用我() { $.ajax({ 类型:“获取”, 网址:“test.php”, 数据:“id=1”, 成功:函数(响应){ $("#testDiv").html(响应); } }); } // 称它为 设置间隔(呼叫我,5000); //每5秒

【讨论】:

  • 代码是否需要外部库,或者它会以这种方式工作吗?谢谢。
  • 你只需要 jquery。下载主文件并将其作为 js 脚本包含在您的页面中。
【解决方案2】:
<script>
       function callMe()
        {
            $.ajax({
                   type: "GET",
                   url: "count.php",
                   data: "id=1",
                   success: function(response){
                              $("#Count").html(response);
                            }
           });
        }

    // Call it 
    // "setInterval" means every 5 secs 
    // "setTimeout" just once...

    setInterval(callMe, 5000); 
</script>  

<p>Count:<span id="Count"></span></p>

【讨论】:

  • 感谢您发布答案!虽然代码 sn-p 可以回答这个问题,但添加一些附加信息仍然很棒,比如解释等..
猜你喜欢
  • 1970-01-01
  • 2019-02-16
  • 1970-01-01
  • 2019-04-29
  • 2021-08-07
  • 1970-01-01
  • 2016-04-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多