TS: Einstellungen als Cookie abspeichern

Beitrag lesen

Hallo und guten Abend,

Entweder Du speicherst die Daten als Cookie am Client, oder aber Du speicherst die Daten unter einem Token am Server als Sessiondaten, bzw, wenn sie langlebiger sein sollen, in einer Datenbank. Dieses Token wird dann in einem Cookie gespeichert am Client und bei jedem Request an die passende Domain im HTTP-Header mitgesendet. Bei PHP landet es dann in $_COOKIE. Und wenn Du session_start() benutzt, musst Du dich noch nicht einmal um das Cookie kümmern. Die Daten stehen dann automatisch beim nächten Request wieder in $_SESSION zur Verfügung.

Aber das wusstest Du doch schon alles, oder? Dein Username ist mir jedenfalls nicht fremd ;-)

Ehrlich gesagt nein, das wusste ich nicht alles. Ich weiß nicht mal, was ein token ist. Ich weiß nur, dass ich nicht erst eine Datenbank aufbauen und verwalten will. Ich will nur, dass meine Seite "individualisiert" werden kann. Also ich biete diverse feeds auf einer Seita an und möchte, dass die Leute unter "Einstellungen" eingeben können, welche der feeds und wieviel Zeilen davon sie angezeigt bekommen wollen. Und dass das dann immer gleich so aufgerufen wird, wenn sie meine Seite aufrufen (bzw. muss ich natürlich noch abfragen, ob sie nicht vielleicht Cookies deaktiviert haben). Also ich möchte beispielsweise, dass sie angeben können, ich möchte feed 1,4,7,8,9,12 und davon jeweils nur 7 Zeilen. Und beim nächsten Mal wird die Seite genau so angezeigt. Also, ich weiß z. B. nicht, wo ich genau abfrage, was im Cookie steht und wie ich diese Werte dann an den html-Part im body übergebe. Mir fehlen Beispiele, wie man sowas macht.

Ein Cookie wird am Client gespeichert.

Es kann nun entweder Daten für den Client speichern, aber die Gesamtgröße ist begrenzt (Ich sage jetzt mal, auf 2kByte pro Cookie). Oder es kann ein Token enthalten (z.B. eine Session-ID). Das ist i.d.R. eine total cryptische und nicht nachvollziehbare, möglichst (ein)eindeutige Digitfolge. Ich sage extra "Digit", denn die einzelnen Stellen dürfen nicht alle Bytewerte annehmen.

Wenn deine Userzahl begrenzt bleibt, dann kannst Du auch Low-Level-Dateien benutzen oder, wenn die Userzahl sogar ganz klein ist, eine gemeinsame mit einem srialisierten Array, um die personalisierten Daten abzuspeichern.

Das Ganze hat aber immer auch rechtliche Relevanz. Sowie Du über deine User personalisierbare Daten speicherst, musst Du ihre Einwilligung dazu haben. Ein Cookie pro User, der auf dessen Client gespeichert wird und auch dort (z.B. durch Javascript) ausgewertet wird, ist unverfänglicher.

Grüße
TS