首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当Mysql数据库更改状态时使用Push.js推送通知

当Mysql数据库更改状态时使用Push.js推送通知
EN

Stack Overflow用户
提问于 2017-08-17 16:09:45
回答 1查看 1.7K关注 0票数 0

目前,我有一个PHP系统订单与客户端和管理端,客户端作出订单和管理状态根据订单的进展。信息订单存储在MySQL数据库表中。

例如,这是我存储用户帐户、信息顺序和状态顺序的表:

代码语言:javascript
复制
CREATE TABLE order (
idorder INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user VARCHAR(30) NOT NULL,
content_order VARCHAR(30) NOT NULL,
status VARCHAR(50)
);

当客户端使用“待定”状态注册订单时,我们在管理页面中检查此订单,并通过AJAX将状态单击按钮更新为“进度”,但客户端必须刷新其页面以查看订单的更改,我希望客户端在其站点中的订单状态发生变化时得到推送通知。

我正在测试Push.js工具,效果很好。就像这个例子:

代码语言:javascript
复制
<html>
<body>
<h4>Press button</h4>
<button id="notify">Notify</button>

<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/push.js/1.0.4/push.min.js"></script>
<script>
 $(document).ready(function(){
        if(!Push.Push.Permission.GRANTED){
            Push.Permission.request();
        }
    });

$("#btn_notificar").click(function(){
        //Push.Permission.request();

        Push.create('NOTIFICATION', {
            body: 'My first notification',
            icon: 'icon.png',
            timeout: 8000,               // Timeout before notification closes automatically.
            vibrate: [100, 100, 100],    // An array of vibration pulses for mobile devices.
            onClick: function() {
                window.focus();
                this.close();
            }  
        });

    });
</script>
</body>
</html>

当管理员的订单状态发生变化时,我如何将此通知集成到客户端页面中。

我需要一些帮助。

EN

回答 1

Stack Overflow用户

发布于 2017-08-17 19:18:01

这可以通过在用户浏览器和服务器之间建立套接字连接来实现。

拟议流动:

  • 用户下订单。浏览器将订单请求发布到服务器并显示“订单详细信息”页面。浏览器还与服务器建立套接字连接,该服务器通过其唯一的order id侦听新下订单的状态更改。
  • 管理员用户更改此订单的状态。浏览器将订单请求发布到服务器并更新数据库。服务器发送/广播此状态更改到正在侦听此订单更改的所有客户端。
  • 用户的浏览器接收到有关状态更改的消息,并将更改通知用户。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45740141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档