Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何让人们通过实时更新在同一表单上协作?_Javascript_Php_Mysql_Html_Forms - Fatal编程技术网

Javascript 如何让人们通过实时更新在同一表单上协作?

Javascript 如何让人们通过实时更新在同一表单上协作?,javascript,php,mysql,html,forms,Javascript,Php,Mysql,Html,Forms,我有一个html表单,其中包含一些链接到数据库行的字段,不同用户必须同时修改这些字段 每次其中一个用户编辑输入字段时,它可能会调用javascript onchange(或类似)函数来更新行中的特定列,但打开同一页面的其他用户直到刷新页面后才看到更改。 我应该使用什么在所有正在查看页面的设备上进行更改 后端是PHP/MySQL 谢谢你当你寻找一些已经存在的工具时,这可能对你有帮助: 当你找不到任何符合你需要的东西时,你可以自己写。因此,您需要Ajax(将更改传输到服务器),它与jQuery结合

我有一个html表单,其中包含一些链接到数据库行的字段,不同用户必须同时修改这些字段

每次其中一个用户编辑输入字段时,它可能会调用javascript onchange(或类似)函数来更新行中的特定列,但打开同一页面的其他用户直到刷新页面后才看到更改。 我应该使用什么在所有正在查看页面的设备上进行更改

后端是PHP/MySQL


谢谢你

当你寻找一些已经存在的工具时,这可能对你有帮助:

当你找不到任何符合你需要的东西时,你可以自己写。因此,您需要Ajax(将更改传输到服务器),它与jQuery结合使用更容易。
您还可以使用ajax从服务器获取数据,但是您必须始终执行请求,这不是很好。另一种选择是websocket,但这需要很多知识。

有几种可能的方法

  • 让客户端中的ajax请求定期轮询web服务器以检索数据。尽管这取决于如何实现,但可能会产生一些性能影响

  • 您可以从使用WebSocket中获益。因为您使用的是PHP和MySQL,所以您可能会研究以下内容。根据代码库的长度,您可以使用node实现一些潜在的功能


  • 您可以向后端服务器发送推送,但现在需要从服务器获取拉送

    为此,您需要在客户端和服务器之间保持一个恒定的通信通道,以便从服务器获取实时更新。有多个选项可供选择:

    • websocket:TCP websocket可用于服务器和客户端之间的实时通信。有关PHP中websocket支持的更多信息,请参阅
    • 轮询(非常肮脏的方式):您可以频繁地从客户端轮询到服务器,查看是否有任何更新。这种实现方式效率很低,根本不推荐使用,但是,由于某些应用程序的系统中已经有轮询,如果您的系统已经在进行频繁轮询,您可以附加查询以获取带有该轮询的表单状态

    谢谢,棘轮正是我需要的!非常欢迎!很高兴听到这对你有用。干杯@Davide!