sql >> Database >  >> RDS >> Mysql

hoe een php mysql-toepassing te bouwen die offline werkt

Er zijn in wezen 3 manieren om te gaan:

Versie 1:"Old school":PHP-Gtk+ en bcompiler

  • Ten eerste, als u dit nog niet hebt gedaan, moet u uw bedrijfslogica scheiden van uw presentatielaag (HTML, template-engines, ...) en databaselaag
  • pas vervolgens uw databaselaag aan, zodat deze kan leven met een alternatieve DB (denk aan lokale SQlite) en synchronisatie kan uitvoeren wanneer deze weer online is
  • Gebruik ten slotte PHP-Gtk+ om een ​​nieuwe gebruikersinterface te maken en dit alles in te pakken met bcompiler

Versie 2:"Standaard":neem uw server mee

Versie 3:"Web 2.x":applicatie verplaatsen van server naar browser

  • Verplaats uw applicatielogica van de serverzijde (PHP) naar de clientzijde (JS)
  • Maak van uw servergedeelte (PHP) alleen een gegevenstoegangs- of synchronisatielaag
  • Gebruik de offline HTML5-functies om uw gegevenstoegang te vervangen door lokale gegevens als u offline bent en om opnieuw te synchroniseren als u online bent

Welke is het beste?

Dit hangt af van wat je hebt en wat je wilt. Als de meeste van uw bedrijfslogica in PHP zit, kan het verplaatsen ervan naar de browser onbetaalbaar zijn - houd er rekening mee dat dit ook een hele nieuwe klasse van beveiligingsnachtmerries genereert. Persoonlijk raad ik overzetten niet aan op deze manier, maar ik raad het wel aan voor nieuwe apps, als de backing-DB niet te groot is.

Als je ervoor kiest om je PHP-bedrijfslogica te behouden, dan is de beslissing tussen 1 en 2 vaak een kwestie van hoeveel UI je app heeft - als het maar een paar CRUD-formulieren zijn, 1. zou een goed idee kunnen zijn - het is zeker de meest draagbaar (in de zin van mee te nemen). Zo niet, ga dan met 2.



  1. MySQL DATETIME DIFF-query

  2. SQL-query om een ​​tabel te maken in MySQL

  3. PostgreSQL:rol is niet toegestaan ​​om in te loggen

  4. Hoe twee tabellen in één verklaring bij te werken?