Javascript 在PHP中,将页面更新为同一页面更改的其他实例

Javascript 在PHP中,将页面更新为同一页面更改的其他实例,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,这是我的问题。我有一个用户登录名。许多用户可以使用相同的凭据登录。当用户登录时,他们会看到一组单选按钮。假设用户A,用户B和用户C同时登录。当用户A选择一些单选按钮时,用户B和用户C也应在其页面中看到它们被选中。(反之亦然)如果用户B再次更改所选单选按钮,用户a和用户C应在其页面中获得该更新值。像这样,最近的选择应该在所有页面中都可见。请帮我解决这个问题 不久前我做过类似的设置,当用户切换部门视图时,应用程序所有打开的页面都会提示他更改并切换到活动部门视图 我是这样做的 在用户会话中存储所需的变

这是我的问题。我有一个用户登录名。许多用户可以使用相同的凭据登录。当用户登录时,他们会看到一组单选按钮。假设
用户A
用户B
用户C
同时登录。当
用户A
选择一些单选按钮时,
用户B
用户C
也应在其页面中看到它们被选中。(反之亦然)如果
用户B
再次更改所选单选按钮,
用户a
用户C
应在其页面中获得该更新值。像这样,最近的选择应该在所有页面中都可见。请帮我解决这个问题

不久前我做过类似的设置,当用户切换部门视图时,应用程序所有打开的页面都会提示他更改并切换到活动部门视图

我是这样做的

在用户会话中存储所需的变量。在您的情况下,由于您需要跨多个用户提供此功能,会话将不起作用—将其存储在数据库或平面文件中。在您的案例中,这些变量会在radio
onChange
事件中更新

使以下JS可用于相关页面。注意,我使用了
onFocus
,因为这是我需要的,所以您可能需要使用
setInterval()

总结如下:

  • 将您的无线电选择写入DB或平面文件(通过AJAX)
  • 设置心跳调用以检查服务器上的当前状态(AJAX)
  • 相应地更新收音机选择

  • 不久前我也做过类似的设置,当用户切换到部门视图时,应用程序所有打开的页面都会提示他更改并切换到活动的部门视图

    我是这样做的

    在用户会话中存储所需的变量。在您的情况下,由于您需要跨多个用户提供此功能,会话将不起作用—将其存储在数据库或平面文件中。在您的案例中,这些变量会在radio
    onChange
    事件中更新

    使以下JS可用于相关页面。注意,我使用了
    onFocus
    ,因为这是我需要的,所以您可能需要使用
    setInterval()

    总结如下:

  • 将您的无线电选择写入DB或平面文件(通过AJAX)
  • 设置心跳调用以检查服务器上的当前状态(AJAX)
  • 相应地更新收音机选择

  • 另一种方法是使用
    WebRTC
    ,它基本上允许您在屏幕上共享用户页面并在其他用户上显示结果,反之亦然。它有非常整洁的API,并且有很多示例可以查看。教程是可用的,他们的主页本身就是一个很好的起点


    但是关于你的问题,我不能给你一个明确的答案,因为这个问题本身有点宽泛(在我看来)。因此,请查看并希望它能有所帮助。

    另一种方法是选择
    WebRTC
    ,它基本上允许您在屏幕上共享用户页面并在其他用户上显示结果,反之亦然。它有非常整洁的API,并且有很多示例可以查看。教程是可用的,他们的主页本身就是一个很好的起点


    但是关于你的问题,我不能给你一个明确的答案,因为这个问题本身有点宽泛(在我看来)。因此,请查看并希望它能有所帮助。

    您可以通过一个简单的数据库查询来完成。它的工作原理是,当有人登录页面时,它从数据库行中获取一个变量。在设定的时间,页面查询数据库。如果数据库中的值已更改,请逐个更新该行。其他页面将按照您设定的时间间隔进行查询,并使用AJAX更新页面。这是一种一次更新所有页面的好方法。以下是本课程的教程。

    您可以在本页的“我的请求”框中看到一个修改后的示例


    它很容易修改。基本的都有

    您可以通过一个简单的数据库查询来完成。它的工作原理是,当有人登录页面时,它从数据库行中获取一个变量。在设定的时间,页面查询数据库。如果数据库中的值已更改,请逐个更新该行。其他页面将按照您设定的时间间隔进行查询,并使用AJAX更新页面。这是一种一次更新所有页面的好方法。以下是本课程的教程。

    您可以在本页的“我的请求”框中看到一个修改后的示例


    它很容易修改。基本的都有

    您可以展示您已经尝试过的内容吗?您可以使用
    AJAX
    将选定的广播发回服务器,并从服务器检索它们。请尝试
    polling
    从服务器获取最新选定的收音机。@guradio我只能获取单选按钮组的选定值。@Parixit您能给我发送一个链接,指向可能的方法吗?我想您应该查看关于webRTC的信息。它基本上是针对这类事情的……您能展示一下您所做的尝试吗?您可以使用
    AJAX
    将选定的无线电发回服务器,也可以从服务器检索它们。请尝试
    polling
    从服务器获取最新选定的收音机。@guradio我只能获取单选按钮组的选定值。@Parixit您能给我发送一个链接,指向可能的方法吗?我想您应该查看关于webRTC的信息。它基本上是针对这类事情的。。。
    window.onfocus = function(e) {
    var_check();
    };
    
    function var_check(){
    $.ajax({
        url: 'home/check_vars_ajax',
        type:'POST',
        dataType: 'text',
        data : {[YOUR DATA]}
    }).done(function(data){
        // ...
        // handle selecting releavant radio buttons here
    });
    }