如何使用php创建同步的网页,以便数据库更改立即反映在浏览器中?

时间:2018-10-31 15:00:10

标签: php mysql

我如何在php中创建同步的网页,以便如果数据库发生更改,它会立即反映给在浏览器中查看该网页的任何人。该数据库是在mysql中,我正在使用无框架的纯php。

我有一个数据库表来显示旅游套餐,该套餐可以与多人共享,现在,如果其中任何一个人更改了套餐中的任何内容,例如机票预订,这应该立即反映给查看该套餐的其他人。我知道这可以通过节点和反应来完成,但是使用香草js和php可能吗?如果是这样的话,对不起,如果我错过任何明显的事情。

2 个答案:

答案 0 :(得分:1)

例如,您可以使用SSE(服务器发送事件)来实现它

https://www.html5rocks.com/en/tutorials/eventsource/basics/

答案 1 :(得分:1)

是的,您可以通过AJAX调用使用香草Javascript来实现。我将使用jQuery,但您可以使用普通Javascript做同样的事情,只需研究那些AJAX函数即可。

您将需要3个Java函数:

  1. 当软件包更改时,将更新发送到服务器(PHP> DB)
  2. 从服务器获取软件包更新(这是一个轮询功能,您可以每隔x秒调用一次以检查软件包的更新。我建议在服务器回显输出之前使用json_encode(),以便您可以在JavaScript方面轻松地与$.parseJSON进行解析
  3. 使用#2的更新,通过Javascript / jQuery重新渲染页面上的数据(有助于获得特定的ID和类,以便您轻松更改数据)

http://api.jquery.com/jquery.ajax/