• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage 1000 Daten speichern?

Willibergi

Mitglied
Moin,
ich muss auf meiner Seite mehr als 1000 Daten dauerhaft lokal speichern.
Auf der Seite habe ich die Daten in einem mehrdimensionalen Array - ich muss diese Daten bzw. dieses Array aber dringend dauerhaft auf dem Computer eines Benutzers speichern. (die Webapp ist nur für eine Person - nicht öffentlich)
Ich habe schon über das File-Objekt gelesen; das ist aber serverseitig und ich muss mit meiner Seite unbedingt lokal bleiben!
Darum kann ich auch nicht auf PHP oder ähnliches zurückgreifen.
HTML-LocalStorage kommt für mich auch nicht infrage, weil die Daten beim Schließen des Browsers entfernt werden.
Cookies kommen ebenso nicht infrage, weil ich einfach viel zu viele Daten habe, die ich nicht alle in Cookies unterbringen kann und außerdem ist die Anzahl von Cookies pro Seite begrenzt.
Wie würdet ihr das also machen?
Ich hoffe, ihr könnt mir helfen - ich bin nach 2h googlen am Verzweifeln. :S
LG Willibergi
 
Werbung:
Wo ist das Problem, dass du immer die aktuelle Version der Daten als Datei auf dem Server über eine URL bereitstellst und der Benutzer macht einen Download und legt die lokal ab. Die eigentliche HTML-Seite zeigt dann auf die lokale Datei. Außerdem sind 1000 Datensätze ja nicht gerade die Welt, wenn jeder 100 Zeichen hat, bist bei 100.000 Byte und das hat jedes mittelgroße Bild mit ein wenig Qualität.

Oder nimmst wie vorgeschlagen den localStorage, den kannst über JavaScript automatisch aktualisieren, ohnd dass der Benutzer etwas machen muss.
 
Werbung:
Wo ist das Problem, dass du immer die aktuelle Version der Daten als Datei auf dem Server über eine URL bereitstellst und der Benutzer macht einen Download und legt die lokal ab. Die eigentliche HTML-Seite zeigt dann auf die lokale Datei. Außerdem sind 1000 Datensätze ja nicht gerade die Welt, wenn jeder 100 Zeichen hat, bist bei 100.000 Byte und das hat jedes mittelgroße Bild mit ein wenig Qualität.

Das Problem: Ich muss lokal bleiben. Könnte ich auf meinen Server, wäre der ganze Mist mit PHP schnell gelöst, aber lokal...

Das wäre sessionStorage. Mit localStorage bleiben die erhalten.

Tatsache! Das könnte die Lösung sein!
Da hätte ich eine Frage, die ich online nirgends finde.
Wie lange bleiben diese Daten erhalten?
Bleiben die unendlich lang, oder bis zum Herunterfahren des PCs oder wie lange?
 
https://wiki.selfhtml.org/wiki/JavaScript/Web_Storage

Mit localStorage können Sie Daten im Cache des Browsers speichern. Die Daten werden beim Verlassen der Seite nicht gelöscht und bleiben verfügbar.

Vermutlich mindestens so lange du den Browser nicht de-installierst und zumindest den Cache nicht löschst. Ich habe auf meiner Seite etwas zum Prüfen des localStorage http://php.netaktiv.de/index.php?page=browser
da kannst ja mal was speichern und bissl testen, was beim Cache Löschen und Browser schließen und Reboot passiert.

Nachtrag1: Wäre schön, wenn du die Ergebnisse deiner Tests hier publizierst.

Nachtrag2: Wenn du die Daten nur lesen willst, dann wäre eventuell auch der FileReader eine Alternative https://developer.mozilla.org/de/docs/Web/API/FileReader. Ein Beispiel dazu unter http://www.javascripture.com/FileReader, das lässt sich leicht vom Einlesen eines Bildes auf Text modifizieren.
 
Zuletzt bearbeitet:
Wäre schön, wenn du die Ergebnisse deiner Tests hier publizierst.
Also: Ich habe es tatsächlich nicht geschafft, die Daten im LocalStorage zu löschen.
Weder beim Reboot, noch beim Cachelöschen werden sie gelöscht. Das ist super! (in den DevTools und mit localStorage.clear() geht das natürlich ;)
Prinzipiell habe ich das jetzt so gelöst, dass jeder Kunde eine vierstellige ID bekommt und diese eben mit den Daten im LocalStorage gespeichert werden.
LG Willibergi
 
Werbung:
Schön dass es klappt und gut die Rückmeldung. Mich würde nun noch interessieren, wie du die Daten an die Kunden lieferst und dann in den Local Storage bekommst. Entweder musst du sie ja
  1. Manuell eingeben (wohl eher eine theoretische Möglichkeit)
  2. Doch mal Online sein und Synchronisieren
  3. Datei über Email, FTP, ... versenden und mit FileReader API importieren
 
Nummer 2 und 3.
Ich bin nicht immer offline - nur die Datei befindet sich offline und sendet die Daten an den Server, der online ist.
 
Werbung:
Zurück
Oben