PHP Session über Datenbank nutzen

Speicherung der Aktivitäten aufgrund der Sitzung

Im vorherigen Artikel wurde besprochen, wie Variablen in Sessions gespeichert werden können, aber es gibt auch andere Möglichkeiten, wie man eine Sessionverwaltung durchführen kann. Es gibt nämlich den Weg, manche Funktionen auf die Datenbank auszulagern und ein solcher Weg ist beispielsweise bei einem Onlineshop denkbar und oft sinnvoll.

Wozu brauche ich bei der Sitzung (Session) eine Datenbank?

Beim Onlineshop braucht man auch die Information, ob sich der Kunde eingeloggt hat und ob die Zugangsdaten stimmen. Dieses Thema hatte der vorherige Artikel mit der Speicherung von Variablen in der Session bereits aufgegriffen. Der Einkauf im Internet kann aber einige Hürden mit sich bringen. Natürlich kann man auch über Variablen speichern, welche Produkte der Kunde auf der Seite ausgewählt hat und welche Menge, doch das wird schnell kompliziert und der Fehlerteufel hat viele Möglichkeiten, sich zu entfalten.

Viel besser ist es, den Warenkorb, oft auch als Einkaufswagen bezeichnet, als Datenbank in Kombination mit der Session anzulegen. Das bedeutet, dass eine Sessionverwaltung wieder mit session_start() begonnen wird, aber wenn jemand ein Produkt im Onlineshop in den Warenkorb legt, dann wird in einer Tabelle der Datenbank diese Aktion gespeichert. Das hat den Vorteil, dass man die Session-ID des Users, die genaue Produktangabe (meist Bestellnummer, Artikelnummer etc.) und die genaue Menge kennt. Man muss nicht extra herumprogrammieren, um die Menge und die Artikel zusammenzuhalten.

Entschließt sich der Kunde, dieses Produkt wieder aus dem Warenkorb zu entfernen, dann wird einfach der Datensatz in der Tabelle gelöscht. Entschließt er sich, die ausgewählten Produkte wirklich einzukaufen, wird bei der Bestellung auf die übersichtliche Datenstruktur der Datenbank zurückgegriffen und man muss nicht extra viele Variablen der Session abfragen.

Somit hat man für eine komplexe Anwendung eine einfache Lösung, bei der die Session mit der Datenbank zusammenarbeitet. Die Datenbank agiert in einem solchen Fall als Außenstelle und Platzhalter für Informationen, die man auch über die Session direkt speichern könnte.

Lesen Sie auch

Das Thema PHP + Array ist eines, das man oft brauchen wird, wenn man mit PHP programmieren möchte. In einem Array können auch komplexere Datenstrukturen gespeichert werden, aber die Abfrage ist manchmal etwas irritierend. Man legt mit dem Befehl array ein solches Array an, mit dem Key kann man abfragen, mit unset löschen und mit list und array_walk Abfragen durchführen.

Ein anderes Thema ist die Session. PHP + Session ermöglicht die Abfrage des Besuchers bei Sitzungsverwaltungen wie etwa einem Mitgliederbereich und man kann seitenübergreifend Daten rund um den Besucher wie die eingetragenen Zugangsdaten verwalten.

Diesen Artikel teilen

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel