要实现这样的目标,您应该在客户端使用 JavaScript 和 Ajax。试试 XMLHttpRequest。为了使它更容易,你可以使用类似 jQuery 的东西。在服务器端,您可以使用 json 来传输数据。从表中读取数据并将其放入数组中,我们称之为users
,键是名称,值是它们的模式(1 或 0)。
然后使用json_encode(ARRAY)
:
//Echo the results in json format
echo(json_encode($users));
假设用户“Frank”、“Susan”和“George”在线,“Isabell”和“John”离线。然后脚本将产生类似于以下的输出:
{"Frank":1,"Susan":1,"George":1,"Isabell":0,"John":0}
当然你需要把这个和加载放到另一个 php 脚本中,也许是 refresh.php。
并且,要从脚本中读取数据,请将一些 JavaScript 添加到您的视图页面。使用 XMLHttpRequest 从您刚刚添加的脚本中请求数据。或者,如果你使用 jQuery,你可以简单地使用$.getJSON("NameOfTheScriptYouJustWrote")
which 返回一个已经解析的对象。
然后使用返回的数据更新用户列表。并每 5-20 秒刷新一次。
请记住,这根本不是一种有效的方式,如果有很多客户使用您的服务,这将无法正常工作。