Problem mit integriertem Warenkorbsystem
luxury
- programmiertechnik
Hi!
Folgende Situation:
Das Warenkorbsystem wird in PHP mit MySQL programmiert... nun folgendes Problem.. wenn man einen Artikel in den Warenkorb legt und dannach weitereinkaufen kann, dann braucht man eine ID bzw Kennung.
Ich kann ja nicht einfach per PHP die sessid ermitteln und über jede HTML-Seite übertragen wie zB. produkt_xy.html?id=sessionid.
Könnt ihr mir bitte ein paar Anregungen / Vorschläge posten?
MfG luxury
Mahlzeit luxury,
Das Warenkorbsystem wird in PHP mit MySQL programmiert... nun folgendes Problem.. wenn man einen Artikel in den Warenkorb legt und dannach weitereinkaufen kann, dann braucht man eine ID bzw Kennung.
Dann merke Dir diese doch einfach in der Session.
Ich kann ja nicht einfach per PHP die sessid ermitteln und über jede HTML-Seite übertragen wie zB. produkt_xy.html?id=sessionid.
Wieso solltest Du das auch? Dafür ist schließlich ein entsprechendes Session-Handling da.
MfG,
EKKi
die website besteht komplett aus html dateien. es gibt nur warenkorb.php warenkorb_add.php warenkorb_edit.php und checkout.php
wie soll ich dann auf den html seiten die kennung für den gespeicherten warenkorb behalten/weitergeben/übertragen?
Hello,
die website besteht komplett aus html dateien. es gibt nur warenkorb.php warenkorb_add.php warenkorb_edit.php und checkout.php
wie soll ich dann auf den html seiten die kennung für den gespeicherten warenkorb behalten/weitergeben/übertragen?
Darum kümmert sich der Browser, sofern er Cookies akzeptiert. Aber das kann man durchaus zur Auflage machen. Es ist die technisch unkomplizierteste und stabilste Lösung.
User, die Cookies ablehnen, sollten besser in den nächsten Laden gehen zum Einkaufen.
Alternativ kann man den Warenkorb auch als serialisiertes Array von Dokument zu Dokument mitschleppen, was aber dann voraussetzt, dass der Kunde keinesfalls mit der browsereigenen Navigation zurück und wieder vor blättert.
Bei umfangreicheren Shop-Seiten, bei denen die Kunden auch schon mal mehrere Minuten arbeiten müssen, um ihre Bestellung zusammenuzustellen, würde ich übrigens niemals die Daten in der Session speichern, sondern immer nur in der DB. Dafür ist dann aber eine vorherige Authentifizierung des Kunden notwendig.
Wenn dann mal am Client der Strom ausfällt oder die Leitung und damit auch die Session zusammenbricht, dann kann der Kunde wiederausetzen. Wenn er das nicht will, sollte ihm ein Button "angefangene Bestellung löschen" o.ä. zur Verfügung stehen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Es ist die technisch unkomplizierteste und stabilste Lösung.
Welche?
Hello,
Es ist die technisch unkomplizierteste und stabilste Lösung.
Welche?
Mit Cookies zu arbeiten.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
hi,
die website besteht komplett aus html dateien. es gibt nur warenkorb.php warenkorb_add.php warenkorb_edit.php und checkout.php
Das ist bei mir ganz ähnlich.
wie soll ich dann auf den html seiten die kennung für den gespeicherten warenkorb behalten/weitergeben/übertragen?
Bei mir wird der Cookie erst gesetzt, wenn ein Artikel in den WK gelegt wird. Die Tabelle für den WK ist gleichzeitig die Sessiontable. Kommt der nächste Artikel in den Korb, ist die Session bereits aufgebaut und die im Cookie gesendete ID ist gleich der ID im Artikelobjekt.
Falls bei Dir bereits beim Request auf eine HTML-Seite serverseitig nach dem Cookie gefragt werden soll, ist die Path-Angabe von Interesse. Mit path=/ sendet der Browser den Cookie an alle Ressourcen (/foo.html, /bar/foo.html, /cgi-bin/*).
Hotti