php jquery自动加载内容

php jquery自动加载内容,php,javascript,Php,Javascript,我想知道这是一个没有页面刷新自动加载新内容的好方法。例如,在之前的twitter趋势分析中,当有人发布相关的趋势分析内容时,它会自动加载新提交的内容,而不会加载页面 我尝试了一些方法,例如(pull方法),在我的javascript中,我会设置加载frm sql查询的时间间隔: var auto_refresh = setInterval(function () { $('#myLinks').load('http://domain.com/link/loadlatestnews

我想知道这是一个没有页面刷新自动加载新内容的好方法。例如,在之前的twitter趋势分析中,当有人发布相关的趋势分析内容时,它会自动加载新提交的内容,而不会加载页面

我尝试了一些方法,例如(pull方法),在我的javascript中,我会设置加载frm sql查询的时间间隔:

var auto_refresh = setInterval(function () {
        $('#myLinks').load('http://domain.com/link/loadlatestnews').fadeIn(2000);
    }, 400); // refresh every 400 milliseconds
但是这是一个好主意吗?因为它需要客户机每隔400毫秒不断尝试从sql加载数据


如果mysql中有新内容,是否可以使用推送方法设置事件回调???

您可以通过这种方式自动刷新

<script type="text/javascript" src="../js/jquery.min.js"></script>
        <script type="text/javascript">
            // setTimeout(function(){ window.location.reload(); }, 2000);

                $.ajax({
                 success:function(){
                     setTimeout(function(){ window.location.reload(); }, 2000)
                 }   
                });

        </script>

//setTimeout(函数(){window.location.reload();},2000);
$.ajax({
成功:函数(){
setTimeout(函数(){window.location.reload();},2000)
}   
});

您现在所做的是一个好主意,但如果您的服务器功能不够强大,请不要每400毫秒轮询一次。此外,您还应该在每个请求上向服务器发送最后一个结束日期,以便服务器仅加载该日期之后的内容,并在每次请求时返回新的最后一个日期。这样,您可以检查服务器是否有新记录,如果有,则启动一个函数。

这取决于具体情况。您是否有权访问服务器软件。以及您是否愿意配置它

您需要的是comet服务器:


但如果你的站点不大,你可以像现在一样使用定时轮询技术。只是让间隔时间更长。400毫秒真是太短了。另外,请尝试按照Shaheer的建议优化SQL。

他不是要求重新加载页面,而是要求提供一种方法,每x分钟通过ajax刷新页面上的内容是的,我让你只在页面刷新时使用ajax,在你的系统上运行它不是重新加载页面ajax,这是一种很好的方式。。这样我就不会消耗那么多资源。我意识到过多的mysql加载会导致cpu负载过高。嗨,我有一个问题。如果有R2条记录具有相同的时间戳会怎么样。。那我怎么才能拿到唱片呢??我的sql查询是:从
记录
中选择*其中1和dateTimeSubmitted>1330754710按dateTimeSubmitted限制1将自动返回其中两个。