php - 使用 PHP/MySQL 客户端从在线无缝过渡到离线?

标签 php jquery mysql database json

我有 PHP/MySQL 前端,它使用一些非常大的表单来收集数据。我在后台使用 JSON post 定期将数据保存到数据库中。有时,用户会失去连接,但会继续工作。然后数据丢失,导致挫折等......

是否可以让客户端在连接断开时无缝过渡到将数据保存在本地文件中,然后在连接恢复后同步回数据库?我知道这不是一个简单的请求,我只是想看看它是否已经完成,或者理论上是否可以完成。

提前致谢。

最佳答案

您可以尝试使用 LocalStorage。您可以找到有关该机制的基本信息 here

简单的使用如下: 1. 当用户打开一个表单时,您检查本地存储中是否有任何数据(以及该数据是否比来自服务器的数据更新)——如果是,则加载它。 2. 有时 js 会尝试发送带有更新的 ajax 调用。失败时(连接超时等)js 只是将数据保存在本地(带有时间戳)并稍后尝试保存。

但是,您可以通过将每次更改(或当用户移动到另一个字段时)的表单数据保存到本地存储中并偶尔运行第二个函数来尝试将此数据发送到服务器,从而对其进行一些改进。

这种解决方案的缺点是它不能在旧浏览器中工作,但如果你真的需要,你可以通过将 LocalStorage 替换为... cookie 来克服这个问题。它会非常丑陋,但可以按您的需要工作。

关于php - 使用 PHP/MySQL 客户端从在线无缝过渡到离线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19012491/

相关文章:

php - 我怎样才能简单地返回 PDO 中的对象?

php artisan Schedule :run, 没有计划的命令准备好运行,不知道为什么?

jquery - 使用jquery发送post方法

jquery - 变量值设置不正确

jquery - 动画 stokeRect 不透明 Canvas

php - 是否有将字符串转换为小写的 MySQL 命令?

php - Moodle 安装字符集

php - 检索图像——基于 MySQL 或基于文件系统,哪个更快?

php - 在 Yii 中使用资源的正确方法是什么?

php - MYSQL 查询仅在不是特定日期时进行分组