php - 实时同步MySql和IndexedDB

标签 php mysql real-time indexeddb dexie

我的数据库(树系统)中有一个父子关系表,每个 child 都有一个 parent ,每个 parent 都有一些 child 。

我的后端是 PHP,我的数据库是 MySql,我获取表(类别)的所有行,然后将它们全部插入到 indexedDB 中。使用它既简单又好。

一切正常,除了同步!想象一下,我有一些用户,他们都在同一时间只编辑一行。我获取所有表行并通过每次刷新 (F5) 将其添加到 indexedDB 我的意思是当用户获取页面时所有行都是新鲜的,但是当用户编辑一行并且其他用户也在编辑时,他们看不到更改其他用户制作。

如何通过PHP和MySql以及dexie.js进行实时同步?

最佳答案

Dexie 支持CRUD hooks .它将拦截对客户端数据库的任何更改。在该 API 上,可以与服务器建立同步。客户端和服务器都需要跟踪更改并交换自特定修订或时间戳以来完成的更改。

dexie 有一个名为 Dexie.Syncable 的附加组件为您在客户端执行此操作。虽然它不稳定,但请尝试一下,看看它是否能满足您的需求。有一个 example of server implementation在内存数据库上用作构建服务器部分的模板。

关于php - 实时同步MySql和IndexedDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34470607/

相关文章:

php - 将 CSS DIV 与 PHP 中的输入表单混合使用是正确的方法吗?

javascript - 初学者 javascript - 显示有限数量的查询并在底部添加加载

mysql - 在未找到给定查询 "champion"的情况下,返回表中存在的 "championship"的最佳方法

我可以在我的流程中进行实时调度(但不影响其他人)吗?

amazon-s3 - 实时流量批量上传至S3

c - Beaglebone Black 启用 PRU 问题

php - 如何剪掉很长的 Dotrine 注释?

变量中的 PHP 命名空间类

php - HHVM (HipHop) 是否支持 Postgresql/任意 pecl 扩展?

mysql - 如何使用时区信息在 MySQL 中存储日期时间