我需要能够拥有一个PHP页面,允许一个人向其发送带有信息的POST请求,然后每个已打开页面的用户将自动更新以反映POST请求中的新信息,而无需刷新页.
我有一些PHP的经验,我可以处理接收POST请求和读/写数据库,我只需要知道如何(如果可能的话)我可以让这个PHP脚本将这个新信息发送给所有连接的客户端而不需要他们刷新页面.
感谢您的任何见解!
好的Aaron,我必须继续这里,因为评论中没有太多空间来解释这一点.
如果您已经在使用ajax将数据发布到数据库,那么您可以这样做:
在页面中,您需要刷新添加另一个ajax request,以便从数据库中检索已发布的值并将其包装在函数中,例如:
function get_post(){
var Url = 'here the url that points to your php script'
$.ajax({
url: Url,
type: 'POST',
dataType: 'json',
data: { //if needed you need to pass here the parameters },
})
.done(function(data) {
//here assign the returned data to the html element
})
.fail(function() {
console.log("error");
});
}
Run Code Online (Sandbox Code Playgroud)
之后你需要这个以便定期调用函数:
setInterval(function(){
get_post()
},5000);
Run Code Online (Sandbox Code Playgroud)
这将每5秒执行一次上述功能(根据您的需要调整此值)页面将刷新而不重新加载.
注意:我不知道您要存储的内容以及要显示的内容,因此根据您的计划,您需要在返回的响应中添加一些额外的代码,并且您可能需要预先格式化html直接在您的php脚本中输出,以便您可以一次性在页面中显示它.
我希望这会让你知道如何做到这一点.