Mysql
 sql >> Datenbank >  >> RDS >> Mysql

wie man eine PHP-Mysql-Anwendung erstellt, die offline funktioniert

Es gibt im Wesentlichen 3 Möglichkeiten zu gehen:

Version 1:"Alte Schule":PHP-Gtk+ und bcompiler

  • Wenn Sie dies noch nicht getan haben, müssen Sie zunächst Ihre Geschäftslogik von Ihrer Präsentationsschicht (HTML, Templating-Engines usw.) und Ihrer Datenbankschicht trennen
  • Passen Sie dann Ihren Datenbank-Layer an, damit er mit einer alternativen DB leben kann (lokales SQlite kommt mir in den Sinn) und die Synchronisation durchführen, wenn er wieder online ist
  • Verwenden Sie schließlich PHP-Gtk+, um eine neue Benutzeroberfläche zu erstellen, und packen Sie all dies mit bcompiler

Variante 2:"Standard":Nehmen Sie Ihren Server mit

  • Schauen Sie sich Server2Go, WampOnCD und Freunde an, um einen "doppelklickbaren Webserver" zu erstellen (beginnen Sie bei Z-WAMP )
  • Sie müssen Ihren DB-Layer noch wie in Version 1 anpassen

Version 3:"Web 2.x":Anwendung vom Server in den Browser verschieben

  • Verschieben Sie Ihre Anwendungslogik von der Serverseite (PHP) auf die Clientseite (JS)
  • Machen Sie Ihren Serverteil (PHP) nur zu einer Datenzugriffs- oder Synchronisierungsebene
  • Verwenden Sie die HTML5-Offlinefunktionen, um Ihren Datenzugriff durch lokale Daten zu ersetzen, wenn Sie offline sind, und um neu zu synchronisieren, wenn Sie online sind

Welches ist das Beste?

Das hängt davon ab, was Sie haben und was Sie wollen. Wenn sich der Großteil Ihrer Geschäftslogik in PHP befindet, kann es unerschwinglich teuer sein, sie in den Browser zu verschieben - seien Sie sich bewusst, dass dies auch eine ganz neue Klasse von Sicherheitsalpträumen erzeugt. Ich persönlich empfehle keine Portierung auf diese Weise, aber ich empfehle es für neue Apps, wenn die Backing-DB nicht zu groß ist.

Wenn Sie sich entschieden haben, Ihre PHP-Geschäftslogik beizubehalten, dann ist die Entscheidung zwischen 1 und 2 oft eine Frage, wie viel UI Ihre App hat - wenn es nur ein paar CRUD-Formulare sind, könnte 1. eine gute Idee sein - es ist definitiv die am tragbarsten (im Sinne von Mitnehmen). Wenn nicht, gehen Sie zu 2.