首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >持续刷新ajax

问持续刷新ajax
EN

Stack Overflow用户
提问于 2012-03-09 04:52:49
回答 3查看 143关注 0票数 1

我已经使用jquery和AJAX创建了一个简单的聊天脚本,但其中的巨大漏洞是我只能正确地与自己聊天:P

下面是我的主文件的javascript

代码语言:javascript
复制
<script src="http://jqueryjs.googlecode.com/files/jquery-1.2.6.min.js"  type="text/javascript"></script>
<script type="text/javascript">
 $(document).ready(function(){

$("#status").load('ajaxLoad.php');
$("#userArea").submit(function(){
    var hr = new XMLHttpRequest();
var id = '<?php echo $id; ?>';
var name = '<?php echo $name; ?>';


var url = "ajaxPost.php";
var msg = document.getElementById("messages").value;


 var vars = "messages="+msg+"&id="+id+"&name="+name;
hr.open("POST", url, true);

hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function() {
    if(hr.readyState == 4 && hr.status == 200) {
        var return_data = hr.responseText;
        $("#status").append(return_data);
    }
}
hr.send(vars);
return false;});
 });

这是我的第二个文件"ajaxLoad.php“

代码语言:javascript
复制
<?php
include_once "connect_to_mysql.php";
$sql = mysql_query("SELECT messages,id FROM chat");
while($row = mysql_fetch_array($sql))
    {

echo $row["messages"];


    }
    ?>

现在我需要的是不断刷新"ajaxLoad.php“,这样用户就可以在不刷新page...any的情况下实时聊天。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-09 04:58:43

代码语言:javascript
复制
// reload every second
setInterval(function() {
  $("#status").load('ajaxLoad.php');
}, 1000);

注意不要向服务器发出太多的请求。这将是相当密集的。

票数 5
EN

Stack Overflow用户

发布于 2012-03-09 04:58:11

您可以使用javascript setInterval每隔x秒调用一次php脚本。

https://developer.mozilla.org/en/window.setInterval

票数 2
EN

Stack Overflow用户

发布于 2012-03-09 05:01:38

如果你想获得最先进的技术,你应该研究一下WebSockets。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9624759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档