PHP Warenkorb als object ins superglobal $_SESSION

lordg2009

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.503
Hi,

ist es sinnvoll einen Warenkorb als Objekt im superglobal $_SESSION zu erstellen?
Z.B.:
PHP:
$_SESSION['Warenkorb'] = new warenkorb($mysqli);

oder spricht etwas dagegen?
 
Je nach Größe des Objects kann es sein, dass die Serialisierung sehr lange braucht und da Session Daten höchstwahrscheinlich als Datei irgendwo geschrieben werden müssen...

Die Sinnhaftigkeit erschließt sich eigentlich immer nur aus dem Kontext, aber generell war es meistens faul und unsauber seine Variablen und Objects durch Globals an verschiedenen Stellen verfügbar zu machen.
 
was wäre denn eine geeignete Alternative?
Den Warenkorb komplett als Datenbankeintrag zu realisieren und mit ajax zu befüllen und zu lesen, bei jedem Seitenaufruf wieder von Neuem?
 
javascript.. und zum beispiel im localStorage des browsers als json speichern.. wobei es nicht viel gegen spricht ein array mit daten ind er session zu speichern.. nur eine klasse die dann wieder eine instanz einer klasse nutzt.. kp wie gut man sowas serialisieren kann
 
Zuletzt bearbeitet von einem Moderator:
Da Gäste ja auch einen Warenkorb benötigen und Gäste schwerlich in einer Datenbank unterzubringen sind
(außer man erstellt haufenweise sinnlose Daten) sollten Warenkörbe prinzipiell im Browser gespeichert und verwaltet werden.

Einige Shops ermöglichen es jedoch zusätzlich, sofern der User angemeldet ist, den Warenkorb von "Rechner" zu "Rechner" mitzunehmen (Smartphone zu Desktop usw.) und das funktioniert ja nur, indem man den Warenkorb zusätzlich in eine Datenbank auf dem Server schreibt.

Eine Kombination aus beiden Möglichkeiten ist da wohl der Königsweg.

Ich frage mich eher warum man für einen Shop kein fertiges Shopsystem nutzt?
Ist es nicht sehr aufwändig alles selbst zu programmieren, obwohl es bereits fertige Lösungen dafür gibt?
 
Zurück
Oben