Ankündigung

Einklappen
Keine Ankündigung bisher.

PWA und MySql

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PWA und MySql

    Ich steige gerade in PWAs ein.
    In diesem Tutorial
    https://www.youtube.com/watch?v=BHCk...usSL7&index=27
    wird erklärt, wie man Firbase nutzt, um Daten in der indexedDB zu speichern. Mit nur ganz wenigen Zeilen kann man eine Firebase DB, die in der Cloud liegt, mit der lokalen DB der App syncron halten. Sehr eindrucksvoll.

    Wenn nun mein Webprojekt, von dem ich einige Teilbereiche PWA fähig machen will, auf MySql aufsetzt, wie gehe ich da am besten vor?

  • #2
    Bitte beachten:

    Fachfragen zu bestimmten Softwareprodukten

    Inserate, Konzepte und Meinungsumfragen

    MOD: Verschoben von Javsascript
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Wenn nun mein Webprojekt, von dem ich einige Teilbereiche PWA fähig machen will, auf MySql aufsetzt, wie gehe ich da am besten vor?
      Mir fehlt da gerade die konkrete Frage.
      Möchtest du von MySQL auf Firebase umsteigen? Dann schick die Daten an Firebase anstatt zu deinem Server (oder von dort aus weiter zu Firebase, kA).
      [COLOR=#A9A9A9]Relax, you're doing fine.[/COLOR]
      [URL="http://php.net/"]RTFM[/URL] | [URL="http://php-de.github.io/"]php.de Wissenssammlung[/URL] | [URL="http://use-the-index-luke.com/de"]Datenbankindizes[/URL] | [URL="https://www.php.de/forum/webentwicklung/datenbanken/111631-bild-aus-datenbank-auslesen?p=1209079#post1209079"]Dateien in der DB?[/URL]

      Kommentar


      • #4
        Zitat von phpP Beitrag anzeigen
        Wenn nun mein Webprojekt, von dem ich einige Teilbereiche PWA fähig machen will, auf MySql aufsetzt, wie gehe ich da am besten vor?
        Deine Daten musst du mit einer REST API in die Freibase hinterlegen bzw von dort aus abfragen.

        https://firebase.google.com/docs/database/rest/start

        da gibt es auch PHP Libraries dafür
        apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

        Kommentar


        • #5
          Firebase habe ich nur genannt, weil ich von der problemlosen Syncronisation so beeindruckt bin. Aber mir geht es darum, weiterhin mit Mysql zu arbeiten und eine bestmögiche Sychronisation eines Teils der Daten zur PWA hinzukriegen. Lohnt es sich, den Umweg über Firebase zu machen, oder gibt es direkte Schnittstellen MySql-PWA, die ähnlich gut funktionieren?

          Kommentar


          • #6
            Zitat von phpP Beitrag anzeigen
            Firebase habe ich nur genannt, weil ich von der problemlosen Syncronisation so beeindruckt bin. Aber mir geht es darum, weiterhin mit Mysql zu arbeiten und eine bestmögiche Sychronisation eines Teils der Daten zur PWA hinzukriegen. Lohnt es sich, den Umweg über Firebase zu machen, oder gibt es direkte Schnittstellen MySql-PWA, die ähnlich gut funktionieren?
            Du hast da eventuell was falsch verstanden

            https://developers.google.com/web/fu...ffline-for-pwa

            IndexDB ist nicht dazu gedacht, alle deine Daten dort abzuspeichern, wie du siehst, hast du da Limits.

            Hier hast du eine schritt für schritt ANleitung

            https://developers.google.com/web/fu...t-pwapp/?hl=de

            Mysql und IndexDB sollte nicht synchronisiert werden.

            Der Trick ist, du lädst Daten über Ajax nach, bist du Offline, versucht du einige Offline Daten zur Verfügung zu stellen, bist du Online holst du wieder Daten aus der eigentlichen Quelle. Speicherst eventuell weitere Dinge im Localstorage ab um dann, wenn du wieder Online bist, deine Funktion ausführen.
            apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

            Kommentar


            • #7
              IndexDB ist nicht dazu gedacht, alle deine Daten dort abzuspeichern, wie du siehst, hast du da Limits.
              Chrome 6% of free space
              Firefox 10% of free space
              Safari 50MB
              IE10 250MB
              Das ist doch für ne DB schon mal was? Was wäre die Alternative? In dem Text finde ich keine.

              Die Anleitung kommt nur bis zum Cachen von Resourcen, nicht zum Speichern von Daten.

              Der Trick ist, du lädst Daten über Ajax nach, bist du Offline, versucht du einige Offline Daten zur Verfügung zu stellen, bist du Online holst du wieder Daten aus der eigentlichen Quelle. Speicherst eventuell weitere Dinge im Localstorage ab um dann, wenn du wieder Online bist, deine Funktion ausführen.
              Wie würdest Du denn eine Adressverwaltung realisieren. Man braucht alle Adressen vom Server auf dem Device, soll aber offline auch suchen und neue Einträge machen können, die später gesynct werden. Zuerst würde man dafür doch die Daten vom Server (MySql) in die IndexDB laden. Und wenn man online ist, IndexDB und MySql synchronisieren.

              Ich habe beim Googeln bisher keine richtige API dafür gefunden, scheint noch alles sehr in den Kinderschuhen?!

              Kommentar


              • #8

                Zitat von phpP Beitrag anzeigen
                Das ist doch für ne DB schon mal was? Was wäre die Alternative? In dem Text finde ich keine.
                Weiß ich halt nicht wieviele Daten da so gespeichert werden, es kann sein dass es reicht, kann auch sein dass es nicht reicht. Alternative ist localstorage

                https://developer.mozilla.org/de/doc...w/localStorage

                Kannst ja versuchen, beim Aufrufen deiner Seite, holst du dir alle deine Daten aus der Datenbank und schreibst diese in dein HTML code
                PHP-Code:
                var offlineData = '<?= json_encode($rows)?>';
                durch diese Daten iterierst du in Javascript und speicherst die ins localstorage ab, dann kannst du auch suchen.

                Zitat von phpP Beitrag anzeigen
                Wie würdest Du denn eine Adressverwaltung realisieren. Man braucht alle Adressen vom Server auf dem Device, soll aber offline auch suchen und neue Einträge machen können, die später gesynct werden. Zuerst würde man dafür doch die Daten vom Server (MySql) in die IndexDB laden. Und wenn man online ist, IndexDB und MySql synchronisieren.
                Bei der Suche würde ich da eine Offline Seite einbauen wo dann steht dass die Suche aktuell nicht geht, neue Adresse anlegen, diese würde ich zwischenspeichern in index db oder localstorage und wenn der User online ist, werden die Daten per Ajax versendet.

                Zitat von phpP Beitrag anzeigen
                Ich habe beim Googeln bisher keine richtige API dafür gefunden, scheint noch alles sehr in den Kinderschuhen?!
                wieso? hier https://developer.mozilla.org/de/doc...edDB_verwenden

                das ist halt alles über JavaScript geregelt auf dem Handy, desswegen kann man nicht so einfach die DB mit Mysql synchronisieren. Du musst halt die Daten von deinem Lokalen Handy auf deinen Server schicken, das macht man über Ajax. Du könntest ja auch einfach nur javascript variablen erstellen oder HTML Code manipulieren, aber dann würden diese Änderungen verloren gehen sobald du den Browser/App schließt, desswegen IndexDB/Localstorage.
                apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                Kommentar

                Lädt...
                X