gpt4 book ai didi

php - 如何构建一个离线工作的 php mysql 应用程序

转载 作者:IT王子 更新时间:2023-10-28 23:47:54 26 4
gpt4 key购买 nike

我有一个 Web 应用程序,可以在线将数据存储在 MySQL 数据库中。它还使用 PHP 代码检索数据,在服务器上执行计算并将结果发送回用户。

数据非常简单:名称、描述、价格、增值税、从数据库中读取并在服务器端操作的每小时费用。

客户通常在互联网连接不佳或不可用的环境中工作。在这种情况下,我希望客户能够离线工作:输入新的名称、描述、价格并使用最后的增值税来执行计算。然后在连接可用时同步所有数据。

现在的问题是,我不知道实现这一目标的最佳方法或技术是什么。别担心,我不是要为我编写代码。你能给我解释一下构建这样一个系统的正确方法是什么吗?

有没有一种简单的方法可以在本地使用我的在线 MySQL 和 PHP 代码?

我是否应该将我需要的数据保存在本地文件中,在 JavaScript 中重建计算,在本地执行它们,然后在数据库可用时同步数据。

我是否应该使用两个 MySQL 数据库,一个本地,一个在线,并在数据可用时在两者之间进行同步?如果是,我应该使用哪种技术(语言)来执行此操作?

如果可能,我希望过去从事过类似项目的 PHP 编码人员能够提供有关框架结构和使用技术的详细信息。请记住,我对这种写申请的方式很陌生,如果你能抽出几分钟时间向我解释一切,我将不胜感激,就像我六岁或愚蠢(我就是这样!)

非常感谢任何帮助和建议。

再见,

多纳托

最佳答案

基本上有3种方法:

版本 1:“老派”:PHP-Gtk+ 和 bcompiler

  • 首先,如果您还没有这样做,您需要将业务逻辑与表示层(HTML、模板引擎等)和数据库层分开
  • 然后调整您的数据库层,以便它可以与备用数据库一起使用(想到本地 SQlite)并在再次联机时执行同步
  • 最后使用 PHP-Gtk+ 创建一个新的 UI 并用 bcompiler 打包所有这些

版本 2:“标准”:随身携带服务器

  • 看看 Server2Go、WampOnCD 和 friend 们创建一个“可双击的网络服务器”(开始于 Z-WAMP)
  • 您仍然需要像第 1 版一样调整您的数据库层

版本 3:“Web 2.x”:将应用程序从服务器移动到浏览器

  • 将您的应用程序逻辑从服务器端 (PHP) 移动到客户端 (JS)
  • 使您的服务器部分 (PHP) 仅作为数据访问或同步层
  • 使用 HTML5 离线功能在离线时将数据访问替换为本地数据,并在在线时重新同步

哪个最好?

这取决于您拥有什么以及您想要什么。如果您的大部分业务逻辑都在 PHP 中,那么将其移入浏览器可能会非常昂贵 - 请注意,这也会产生全新的安全噩梦。我个人不建议以这种方式移植,但如果后备数据库不太大,我建议将其用于新应用程序。

如果您选择保留您的 PHP 业务逻辑,那么 1 和 2 之间的决定通常是对您的应用程序有多少 UI 的疑问 - 如果它只有几个 CRUD 表单,1. 可能是个好主意 - 它绝对是最便携的(在随身携带的意义上)。如果没有,请选择 2。

关于php - 如何构建一个离线工作的 php mysql 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12272302/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com