Php 确定更新时间

Php 确定更新时间,php,javascript,html,Php,Javascript,Html,因为我目前正在制作一个论坛系统,它可以在不刷新页面的情况下加载新的帖子/编辑。现在,对于没有EventSource/WebSocket实现的老浏览器,我想提供另一个选项: 每X秒我就会得到一个PHP网站,它会回应五条最新消息。之后,我只需检查哪些新闻尚未被客户端看到,并将更改应用于页面 现在,我的问题是:如何确定客户端检索新更新的X间隔?我想建立用户的连接,这样就不会完全破坏他的连接 您打算如何实现这一点?在您的案例中,我将使用AJAX技术: 1) 客户端向服务器发送ajaxhttp请求 2)

因为我目前正在制作一个论坛系统,它可以在不刷新页面的情况下加载新的帖子/编辑。现在,对于没有EventSource/WebSocket实现的老浏览器,我想提供另一个选项:

每X秒我就会得到一个PHP网站,它会回应五条最新消息。之后,我只需检查哪些新闻尚未被客户端看到,并将更改应用于页面

现在,我的问题是:如何确定客户端检索新更新的X间隔?我想建立用户的连接,这样就不会完全破坏他的连接

您打算如何实现这一点?

在您的案例中,我将使用
AJAX
技术:

1) 客户端向服务器发送ajaxhttp请求

2) 如果有可用的数据,服务器将向客户端发送HTTP请求,否则,服务器将保留请求并等待信息变为可用(或等待适当的超时事件,例如,每25秒一次),然后最终向客户端发送完整的响应,而不是立即发送空响应

3) 在收到HTTP响应后,客户机立即向服务器发送其他HTTP请求。

我将执行以下操作(代码未经测试,但您应该知道)。对于更简单的代码,使用jQuery

function refreshNews() {
    $.ajax({
        url: "ajax-url"
    }).done(function(data){
        /** add code here */
        setTimeout(function(){ refreshNews(); }, 30000); // 30 secs should be enough to read some headlines
    });
}
refreshNews();

通过这种方式,
refreshNews()
函数只有在数据被接收并显示给用户后才会被调用。

这只是一个想法:发出一个HTTP请求,看看需要多长时间,然后将其用作基础!我会重复一遍,比如说每10分钟一次,以表明我对我的客户有多关心


我认为,与
长轮询相比,它在服务器端的资源友好性更强,特别是对于论坛这样的脚本,在论坛中,用户离开页面的时间不会少于10小时。:)

这应该是评论,而不是回答。@AleksG我已经添加了更多细节