Mysql
 sql >> база данни >  >> RDS >> Mysql

как да създадете php mysql приложение, което работи офлайн

По същество има 3 начина:

Версия 1:„Стара школа“:PHP-Gtk+ и bcompiler

  • първо, ако все още не сте го направили, трябва да отделите своята бизнес логика от слоя на презентацията (HTML, шаблонни машини, ...) и слоя на базата данни
  • след това адаптирайте своя слой база данни, така че да може да живее с алтернативна DB (локален SQlite идва на ум) и да извърши синхронизация, когато отново е онлайн
  • Накрая използвайте PHP-Gtk+, за да създадете нов потребителски интерфейс и опаковайте всичко това с bcompiler

Версия 2:„Стандартна“:Вземете сървъра си със себе си

  • Погледнете Server2Go, WampOnCD и приятели, за да създадете „уеб сървър с двойно кликване“ (Започнете от Z-WAMP )
  • Все още трябва да адаптирате своя DB слой, както във версия 1

Версия 3:"Web 2.x":Преместете приложението от сървър в браузър

  • Преместете логиката на приложението си от страната на сървъра (PHP) към страната на клиента (JS)
  • Направете вашата сървърна част (PHP) само слой за достъп до данни или синхронизиране
  • Използвайте офлайн функциите на HTML5, за да замените достъпа си до данни с локални данни, ако сте офлайн, и за повторно синхронизиране, ако сте онлайн

Кой е най-добрият?

Това зависи от това, което имате и какво искате. Ако по-голямата част от вашата бизнес логика е в PHP, тогава преместването й в браузъра може да е непосилно скъпо – имайте предвид, че това също генерира цял нов клас кошмари за сигурност. Аз лично не препоръчвампренасяне по този начин, но го препоръчвам за нови приложения, ако резервната база данни не е твърде голяма.

Ако сте избрали да запазите своята бизнес логика на PHP, тогава изборът между 1 и 2 често е въпрос на това колко потребителски интерфейс има вашето приложение - ако е само няколко CRUD форми, 1. може да е добра идея - определено е най-преносим (в смисъл да го вземете със себе си). Ако не, отидете с 2.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Време за престой за надграждане на екземпляр AWS RDS

  2. MySQL ГРУПА По брой

  3. Как да импортирам sql файл в база данни, игнорирайки X редове във файла?

  4. Какво може да направи агрегатната функция в клаузата ORDER BY?

  5. mysql - Автоматично актуализиране на събития в друга таблица