Micha: wie läuft das mit dem Warenkorb?

Hallo!

Kann ich bei einem onlineshop über die IP-Adresse sicher feststellen, welcher kunde sich gerade auf einer Seite befindet (damit auch immer sein Warenkorb angezeigt wird)?
Falls nicht, wie dann?

Ciao
Micha

  1. Hi,

    kommt drauf an, womit Du es machen willst. Mit 'nem CGI-Script kann man bestimmt die IP rausfinden. Einfacher geht's mit JavaScript. Hier kann man zwar nicht die IP rausfinden, aber man kann den Inhalt des Warenkorbs in einer Variablen in einem anderen Frame speichern, der dann erhalten bleibt.
    Guckt's Dir mal unter filmab.de (im Shop) an. Basiert auf dem Script von Johannes Gamperl, hab ich nur ein bißchen verbessert.

    MfG Simon

  2. Hallo!

    Kann ich bei einem onlineshop über die IP-Adresse sicher feststellen, welcher kunde sich gerade auf einer Seite befindet (damit auch immer sein Warenkorb angezeigt wird)?
    Falls nicht, wie dann?

    Ciao
    Micha

    Geht nicht! Nur über Cookie oder einloggen.

  3. Kann ich bei einem onlineshop über die IP-Adresse sicher feststellen, welcher kunde sich gerade auf einer Seite befindet (damit auch immer sein Warenkorb angezeigt wird)?

    Du merkst nicht, wenn ein Kunde seine Leitung kappt und sein Provider irgendeinem anderen Kunden aus seinem Pool von IP-Adressen dynamisch eine neue Adresse zuweist.
    Dynamische IP-Adressen sind heutzugtage die Norm, weil nicht genügend Adressen vorhanden sind, um verschwenderisch damit umzugehen (da hat schon wieder jemand bei der Definition einer Norm gedacht, daß 640kB, äh - 256 hoch 4 Adressen ja wohl reichen müßten - die Erweiterung auf 256 hoch 6 ist seit einiger Zeit angekündigt, ich glaube, beide Systeme laufen sogar schon irgendwie nebeneinander ...).

    Überhaupt ist HTTP ein zustandsloses Protokoll - wenn Du eine "Sitzung" über mehrere Dialogschritte hinweg führen willst, dann mußt Du dafür "arbeiten".

    Falls nicht, wie dann?

    Hm, eine richtig zuverlässige und elegante Methode kann ich Dir nicht beschreiben.

    Man kann natürlich  ein Login durchführen und danach ständig eine Sitzungs-Kennung zwischen Browser und Server hin- und herschicken - um diese Kennung auf dem Client zu speichern, sind die Möglichkeiten aber begrenzt. (Cookies sind nicht so schön, hidden fields in HTML-Formularen erst recht nicht, weil crackbar).

    Eines der Probleme ist, daß zwar der "legale" Kunde eine Art Sitzungskennung besitzt, aber was tun, wenn ein Cracker auf Verdacht hin eine zufällige Kennung mitschickt und sich quasi in die Übertragung einschaltet? (Und dem Kunden einen Haufen Zeug in den Warenkorb wirft, den der gar nicht kaufen wollte ...)
    Du mußt also neben der Sitzungskennung ggf. auch noch die IP-Adresse des Kunden irgendwo lokal speichern und bei jedem Zugriff die Kombination aus beidem prüfen. (Nicht, daß ich jetzt wüßte, wie fälschungssicher IP-Adressen sind ...)

    Was dann aber lästig ist, das ist das Aufräumen des Gedächtnisse.
    Du speicherst also irgendwo auf dem Server Sitzungskennung und IP-Adresse, um den Kunden bei seinem nächsten Zugriff wiederzuerkennen - und dann läßt der Kunde nichts mehr von sich hören, statt sich brav auszuloggen. Wenn das alle machen, dann sammelt sich ein Haufen Datenmüll auf dem Server an.
    Dieser muß also ab und zu die "alten" Kennungen löschen - beispielsweise könnte man bei jedem Zugriff des Kunden das Änderungsdatum seiner Kennungs-Datei neu setzen und periodisch alles vernichten, was älter als <n> Minuten ist - damit kann man natürlich auch Kunden abschießen, die noch gar nicht raus wollten, wenn man hier zu gründlich ist ...