Eigenen Warenkorb programmieren (Anleitung)

Hallo,

demnächst würde ich gerne einen Warenkorb programmieren, ganz ohne Hilfe anderer Systemen. Da ich noch wenig Erfahrung habe mit PHP und MySQL würde ich gerne hier einige Fragen stellen.

Zuerst würde mich interessieren wie es bei professionellen Webagenturen gemacht wird. Die werden doch auch alle einen eigenen Warenkorb programmieren oder ?

Weiteres brauch ich Hilfe bei der Theoretischen Realisierung. Ich habe gelesen, dass man eine Datenbank benötigt und dort alle Produkte eintragen muss und mit PHP ausliest.
Bei dem Klick auf dem kaufen Button gelangt man in den Warenkorb. Dort sollte man mit Hilfe einer Session oder Cookie die Produkte für den Benutzer abspeichern ?
Im Warenkorb benötige ich eine Schleife die überprüft ob eine Session gesetzt ist, wenn ja ausgegeben. Dort kann ich dann auch Mengen eingeben lassen, Produkte aus dem Warenkorb löschen, Preis berechnen usw.
Abschließend gelangt man durch klicken eines Buttons in das Bestellformular, die Produkte werden nochmal aufgelistet und das Formular kann abgeschickt werden.
In der Sidebar (rechts außerhalb des contents) würde ich noch gerne Anzeige machen wie viele Produkte im Warenkorb sind.

Kann ich wie beschrieben alles so ausführen - muss ich etwas beachten oder gibt es bessere Möglichkeiten - habe ich was vergessen ?
Hat jemand einen Link wo ich Beispiele finden kann ?

:wink: ,
Danny77.

Zur Professionalität gehört häufig auch die Fähigkeit die richtigen Tools auszuwählen, um sich Arbeit (und somit wertvolle Zeit) zu sparen.

Die Artikel, die man in einen Warenkorb legen kann, sind ja in der Regel in einer Datenbank abgelegt.
Für das Speichern und Erhalten des Warenkorbs ist ein Eintrag in der Datenbank aber nicht zwingend notwendig. Kann aber sinnvoll sein.

Damit der Warenkorb Seitenübergreifend erhalten bleibt, braucht man irgendeine Art von Session, die den aktuellen Stand des Warenkorbs sichert. Das kann man mit den PHP eigenen Sessions machen oder indem man die Cookies selbst direkt setzt.

Dabei kann man die Daten, welche Artikel denn im Warenkorb sind, entweder in einer Datenbank ablegen, in einer Datei, oder in den Cookies selbst.
Ich vermute mal, die meisten Tutorials werden das mit einer Datenbank realisieren. Ich persönlich mag es am liebsten, wenn der Warenkorbstatus für nicht angemeldete Besucher in den Browsercookies abgelegt ist (um unnötige „Geisterdatensätze“ in der Datenbank zu vermeiden).

Wo wir gerade dabei sind: Man möchte vielleicht auch berücksichtigen, ob der Besucher angemeldet ist oder nicht. Ist der Besucher angemeldet, könnte man den Warenkorb z.B. mit dem Konto verknüpfen.

Man bekommt eine ganze Menge Tutorials, wenn man nur mal danach googlet.

mfg Balmung

Bei so einem Warenkorb stellt sich oft auch die Frage, ob und wenn, dann wie der Nutzer des Korbes für die Waren zahlen soll. Wenn nicht, stellt sich die Frage, wozu der Warenkorb gut sein soll.
Das Bezahlsystem dürfte das kniffligste Problem sein, denn meist kennen sich ja beide Seiten nicht und haben daher nicht notwendig Vertrauen zueinander.
Meiner Erfahrung nach funktionieren auch viele ‘professionelle’ Warenkörbe in dieser Hinsicht nicht
oder nicht barrierefrei oder nur, wenn der Nutzer des Warenkorbes an seinem Brauser Sicherheitslöcher offenläßt (was sicher nicht ratsam ist, gerade wenn man damit Bezahlvorgänge abwickeln will), was den Laden dann wieder unseriös erscheinen läßt, wenn der dies auch noch fordert.

Ob der Einsatz einer Datenbank sinnvoll ist, hängt auch davon ab, wie oft Produkte wechseln oder auf wie viele verschiedene Weisen Produkte gesucht oder gefunden werden sollen.
Immer wenn sich das häufig ändert, ist eine Datenbank meist effektiv, führt aber auch zu zusätzlichen Sicherheitsproblemen, wenn man das selber zusammenbastelt und dabei was falsch macht.

Hallo,

danke euch beiden für die Rückmeldung.

Das Problem an den fertigen Warenkörben ist, dass man häufig dafür viel zahlen muss und nicht so konfigurierbar ist wie man möchte.
Vor allem auf der Seite die ich bearbeite, sollte es für den Benutzer so einfach wie möglich sein sich im Warenkorb zurechtzufinden, weil die Kunden fast ausschließlich Bauern sind, welche selten etwas mit dem Computer machen. Aus diesem Grund mach ich es auch ohne Anmeldung.
So circa wie hier: http://www.thomann.de/de/index.html

Ich habe auch die Befürchtung, dass ein externer Warenkorb irgendwann wieder entfernt wird, dann kann man alles wieder von vorne machen, ich finde am besten wäre dann gleich selbst einen zu machen. Auch wie hoffmann meint wegen dem Vertrauen wäre für mich ein Punkt ein Shop-System selbst zu machen.
Ja ein Suchsystem würde ich auch gerne einbauen.

Bis ich damit beginne wird noch einige Zeit dauern, später dann würde ich gerne weitere Fragen stellen =).

MfG,
Danny77.

Ein Fertigskript würdest du ja selbst installieren (und hoffentlich dann auch verstehen, was es macht). Von daher würde es ja auch nur von dir wieder entfernt werden.
Wenn das Fertigskript von hinreichend kompetenten Leuten erstellt wurde, sollten da die meisten Sicherheitslücken schon geschlossen sein, die man selbst beim ersten Versuch vermutlich noch mit einbauen würde. Das ist der Vorteil bei einem ordentlichen Fertigskript. Der Nachteil besteht in der Tat darin, daß solche oft nicht einfach nach der Installation zu durchschauen sind und damit auch nicht so einfach an eigene Bedürfnisse anzupassen.

Hinsichtlich des Vertrauens ist ein eigenes Skript ja auch nicht unbedingt besser.
Das Vertrauen der Käufer wird davon kaum abhängen, wenn man davon ausgeht, daß für diese die Mängel und Sicherheitslücken meist nicht erkennbar sind.
Ob man selbst Vertrauen zu den eigenen Fähigkeiten hat - naja, wenn man durch Manipulationen anderer an einem mangelhaften Skript Material oder Geld oder einen guten Ruf verlieren kann, sollte man immer mißtrauisch sein, auch gegenüber den eigenen Skripten ;o)

Und der Bauer an sich ist doch heute sehr Rechner-affin, hat da nicht inzwischen jede Kuh, jedes Schwein und jedes Huhn eine eigene Identifkationsnummer, wo man genau im Rechner überwacht, wann das Tier ‘weg’ muß, um den optimalen Profit zu erzielen? Oder wieviel Futter/Medikamente etc das Tier optimal bekommen soll? Bekommt der Bauer nicht inzwischen auch nur noch Subventionen, wenn seine Äcker mit GPS erfaßt sind und per Satellit überprüfbar ist, daß er wirklich das anbaut, was er behauptet? Nutzen die nicht selbst GPS, um sich auf ihren Äckern zurechtzufinden oder dem Mähmaschinenfahrer präzise anzugeben, welches Feld geerntet werden soll? Richten die sich nicht längst nach Wetterprognosen aus dem Netz?
Die modernen Landmaschinen haben doch vermutlich bereits alle Rechner eingebaut und lassen sich per WLAN oder Mobiltelephon ansteuern ;o) Vielleicht haben einige sogar einen eigenen Vertrieb übers Netz laufen, besonders effektiv für Bio-Kleinbetriebe, die ihre Kundschaft in der Stadt noch erreichen wollen.

Von daher würde ich da mal nicht vermuten, daß die allesamt kein Interesse und keine Ahnung von Computern haben - gut, die Kühe und Schweine selbst vielelicht nicht, die Bauern und Bäuerinnen schon :o)

[quote=“hoffmann”]Ein Fertigskript würdest du ja selbst installieren (und hoffentlich dann auch verstehen, was es macht). Von daher würde es ja auch nur von dir wieder entfernt werden.
Wenn das Fertigskript von hinreichend kompetenten Leuten erstellt wurde, sollten da die meisten Sicherheitslücken schon geschlossen sein, die man selbst beim ersten Versuch vermutlich noch mit einbauen würde. Das ist der Vorteil bei einem ordentlichen Fertigskript. Der Nachteil besteht in der Tat darin, daß solche oft nicht einfach nach der Installation zu durchschauen sind und damit auch nicht so einfach an eigene Bedürfnisse anzupassen.

Hinsichtlich des Vertrauens ist ein eigenes Skript ja auch nicht unbedingt besser.
Das Vertrauen der Käufer wird davon kaum abhängen, wenn man davon ausgeht, daß für diese die Mängel und Sicherheitslücken meist nicht erkennbar sind.
Ob man selbst Vertrauen zu den eigenen Fähigkeiten hat - naja, wenn man durch Manipulationen anderer an einem mangelhaften Skript Material oder Geld oder einen guten Ruf verlieren kann, sollte man immer mißtrauisch sein, auch gegenüber den eigenen Skripten ;o)

Und der Bauer an sich ist doch heute sehr Rechner-affin, hat da nicht inzwischen jede Kuh, jedes Schwein und jedes Huhn eine eigene Identifkationsnummer, wo man genau im Rechner überwacht, wann das Tier ‘weg’ muß, um den optimalen Profit zu erzielen? Oder wieviel Futter/Medikamente etc das Tier optimal bekommen soll? Bekommt der Bauer nicht inzwischen auch nur noch Subventionen, wenn seine Äcker mit GPS erfaßt sind und per Satellit überprüfbar ist, daß er wirklich das anbaut, was er behauptet? Nutzen die nicht selbst GPS, um sich auf ihren Äckern zurechtzufinden oder dem Mähmaschinenfahrer präzise anzugeben, welches Feld geerntet werden soll? Richten die sich nicht längst nach Wetterprognosen aus dem Netz?
Die modernen Landmaschinen haben doch vermutlich bereits alle Rechner eingebaut und lassen sich per WLAN oder Mobiltelephon ansteuern ;o) Vielleicht haben einige sogar einen eigenen Vertrieb übers Netz laufen, besonders effektiv für Bio-Kleinbetriebe, die ihre Kundschaft in der Stadt noch erreichen wollen.

Von daher würde ich da mal nicht vermuten, daß die allesamt kein Interesse und keine Ahnung von Computern haben - gut, die Kühe und Schweine selbst vielelicht nicht, die Bauern und Bäuerinnen schon :o)[/quote]

Hallo hoffmann,

ich bin davon ausgegangen, dass solche shopsysteme nur zu implementieren erhältlich sind und über einen externen Server laufen.
Fertigscripte würden am ehesten meinen Wünschen entsprechen, allerdings werde ich den Shop doch selbst machen, damit ich noch einiges dazulernen kann. Mein eigenen Shop kann ich in der Zukunft dann selbst so oft verwenden und bearbeiten wie ich möchte.

Bei uns in Südtirol (Italien) gibt es keine solch ausgefuchste Technik =) (davon habe ich nicht mal gehört und dabei gehört meine Familie selbst zu den Kleinbauern). Die meisten Kunden besitzen zurzeit noch nicht mal einen Internetanschluss (Wenn dann häufig nur über der Telefonlinie), außerdem gibt es fast ausschließlich nur Kleinbauern die diesen Schnick Schnack gar nicht brauchen.
Aber laut Gesetzt (2013-2014) sind diese nun angewiesen Erträge über Internet zu versenden. Somit sollen sich die Neuankömmlinge so einfach wie Möglich durch die HP navigieren können.

Zum Thema Sicherheit werde ich bestimmt auch noch einige Fragen stellen müssen, denn PHP und MySQL ist für mich noch komplett Neuland.

:wink: ,
Danny77.

[quote=“danny77”][quote=“hoffmann”]Ein Fertigskript würdest du ja selbst installieren (und hoffentlich dann auch verstehen, was es macht). Von daher würde es ja auch nur von dir wieder entfernt werden.
Wenn das Fertigskript von hinreichend kompetenten Leuten erstellt wurde, sollten da die meisten Sicherheitslücken schon geschlossen sein, die man selbst beim ersten Versuch vermutlich noch mit einbauen würde. Das ist der Vorteil bei einem ordentlichen Fertigskript. Der Nachteil besteht in der Tat darin, daß solche oft nicht einfach nach der Installation zu durchschauen sind und damit auch nicht so einfach an eigene Bedürfnisse anzupassen.

Hinsichtlich des Vertrauens ist ein eigenes Skript ja auch nicht unbedingt besser.
Das Vertrauen der Käufer wird davon kaum abhängen, wenn man davon ausgeht, daß für diese die Mängel und Sicherheitslücken meist nicht erkennbar sind.
Ob man selbst Vertrauen zu den eigenen Fähigkeiten hat - naja, wenn man durch Manipulationen anderer an einem mangelhaften Skript Material oder Geld oder einen guten Ruf verlieren kann, sollte man immer mißtrauisch sein, auch gegenüber den eigenen Skripten ;o)

Und der Bauer an sich ist doch heute sehr Rechner-affin, hat da nicht inzwischen jede Kuh, jedes Schwein und jedes Huhn eine eigene Identifkationsnummer, wo man genau im Rechner überwacht, wann das Tier ‘weg’ muß, um den optimalen Profit zu erzielen? Oder wieviel Futter/Medikamente etc das Tier optimal bekommen soll? Bekommt der Bauer nicht inzwischen auch nur noch Subventionen, wenn seine Äcker mit GPS erfaßt sind und per Satellit überprüfbar ist, daß er wirklich das anbaut, was er behauptet? Nutzen die nicht selbst GPS, um sich auf ihren Äckern zurechtzufinden oder dem Mähmaschinenfahrer präzise anzugeben, welches Feld geerntet werden soll? Richten die sich nicht längst nach Wetterprognosen aus dem Netz?
Die modernen Landmaschinen haben doch vermutlich bereits alle Rechner eingebaut und lassen sich per WLAN oder Mobiltelephon ansteuern ;o) Vielleicht haben einige sogar einen eigenen Vertrieb übers Netz laufen, besonders effektiv für Bio-Kleinbetriebe, die ihre Kundschaft in der Stadt noch erreichen wollen.

Von daher würde ich da mal nicht vermuten, daß die allesamt kein Interesse und keine Ahnung von Computern haben - gut, die Kühe und Schweine selbst vielelicht nicht, die Bauern und Bäuerinnen schon :o)[/quote]

Hallo hoffmann,

ich bin davon ausgegangen, dass solche shopsysteme nur zu implementieren erhältlich sind und über einen externen Server laufen.
Fertigscripte würden am ehesten meinen Wünschen entsprechen, allerdings werde ich den Shop doch selbst machen, damit ich noch einiges dazulernen kann. Mein eigenen Shop kann ich in der Zukunft dann selbst so oft verwenden und bearbeiten wie ich möchte.

Bei uns in Südtirol (Italien) gibt es keine solch ausgefuchste Technik =) (davon habe ich nicht mal gehört und dabei gehört meine Familie selbst zu den Kleinbauern). Die meisten Kunden besitzen zurzeit noch nicht mal einen Internetanschluss (Wenn dann häufig nur über der Telefonlinie), außerdem gibt es fast ausschließlich nur Kleinbauern die diesen Schnick Schnack gar nicht brauchen.
Aber laut Gesetzt (2013-2014) sind diese nun angewiesen Erträge über Internet zu versenden. Somit sollen sich die Neuankömmlinge so einfach wie Möglich durch die HP navigieren können.

Zum Thema Sicherheit werde ich bestimmt auch noch einige Fragen stellen müssen, denn PHP und MySQL ist für mich noch komplett Neuland.

:wink: ,
Danny77.[/quote]

Dann nehm erstmal kostenlose Scripts… Und bau dir erstmal paar php scripts die du nicht unbdingt sofort online stellen solltest (Sicherheit und so)

Hallo Netsplit.

[quote=“netsplit”]
Dann nehm erstmal kostenlose Scripts… Und bau dir erstmal paar php scripts die du nicht unbdingt sofort online stellen solltest (Sicherheit und so)[/quote]

Ja vielleicht wäre es besser,
ich könnte mir ein Haufen Zeit sparen, das Script an sich wäre besser geschrieben und lernen würde ich beim bearbeiten und verstehen auch einiges.

Könntest du mir ein solches Fertigscript eventuell empfehlen?

:wink: ,
Danny77.

Grad als Anfänger nimmt man sich immer ehrgeizige Ziele… Bis diese aber halbwegs nutzbar und sicher sind, vergehen Jahre. Allein die Implementierung von Bezahlmethoden wie PayPal & co. würden dich höchstwahrscheinlich vorerst an den Rande des Wahnsinns treiben :wink:

Die besten Shops sind wohl xt:Commerce und oscommerce.

Es ist aber weniger eine Frage welches das beste Produkt ist, sondern mehr, welches das passendste für dich ist…

Guck mal hier drüber: http://de.wikipedia.org/wiki/Liste_freier_E-Commerce-Software

Vllt findest du dort ja was, was die zusagt… Ansonsten einfach mal nach “open source ecommerce” google’n.

lg

[quote=„siegener89“]Grad als Anfänger nimmt man sich immer ehrgeizige Ziele… Bis diese aber halbwegs nutzbar und sicher sind, vergehen Jahre. Allein die Implementierung von Bezahlmethoden wie PayPal & co. würden dich höchstwahrscheinlich vorerst an den Rande des Wahnsinns treiben :wink:

Die besten Shops sind wohl xt:Commerce und oscommerce.

Es ist aber weniger eine Frage welches das beste Produkt ist, sondern mehr, welches das passendste für dich ist…

Guck mal hier drüber: http://de.wikipedia.org/wiki/Liste_freier_E-Commerce-Software

Vllt findest du dort ja was, was die zusagt… Ansonsten einfach mal nach „open source ecommerce“ google’n.

lg[/quote]

Hallo siegener89,
vielen Dank für dein Tipp.

Mal sehen ob ich es hin bekomme ;D.

Edit:
Den kann ich konfigurieren wie ich möchte oder ?
Z.b möchte ich nicht, dass sich die Nutzer einloggen müssen um eine Bestellung durchzuführen.

EditEdit:
Ich versuche gerade den Oxid Eshop CE zu installieren, aber ich bekomme beim Aufrufen des Setups immer wieder den selben Fehler. [Bild unten]
-Habe bereits alle Permissions gesetzt (Ordner und auch Unterordner)
-Im Hauptordner in der .htaccess das richtige Verzeichnis ausgewählt
-Filezilla runtergeladen (weil gesagt wurde einige Programme würden nicht alle Dateien hochladen)
-Ein Fehler der mit bplaced zusammenhängt ausgebessert http://forum.oxid-esales.com/showthread.php?t=3397

Was mache ich schon wieder falsch ?

EditEditEdit:
Ich habe mein Problem nun auch im Oxid Forum beschrieben, mal sehen ob dort jemand helfen kann, melde mich dann mit einer Lösung.;D

:wink2: ,
Danny77.

die htcacess enthält fehler deswegen wird es nicht ausgeführt sondern beendet

Hallo netsplit,

die htaccess habe ich doch kaum berührt, außer den Pfad abzuändern. Sonst ist diese 1 zu 1 aus dem Download Päckchen übernommen worden.

htaccess

Könnte sein, dass die Version (aktuellste) welche ich heruntergeladen habe, deren Bedingungen von bplaced unterstützt werden ?

:wink: ,
Danny77.

hi, welche rechte hat den die htcaccess datei ?
Sie muss nämlich 644 ( -rw-r–r-- ) haben

[quote=“netsplit”]hi, welche rechte hat den die htcaccess datei ?
Sie muss nämlich 644 ( -rw-r–r-- ) haben[/quote]

Hallo netsplit,

ich habe 777 gesetzt so wie in der Installations-Beschreibung beschrieben.
[Screenshot unten]

Das selbe habe ich für die Ordner und Unterordner wie Hier beschrieben umgesetzt.

:wink: ,
Danny77.

Und was genau hast du an der .htaccess angepasst?

Hallo Balmung,

nur den Pfad/Verzeichnis habe ich verändert. Siehe Zeile 17 in der verlinkten htaccess oben.

RewriteBase /
geändert in:
RewriteBase /shop/

Nachzulesen hier.

:wink: ,
Danny77.

Das muss auf jeden Fall raus – denn du hast hier bei bplaced nicht die Rechte, diese Option zu setzen. (Ist aber per Default schon gesetzt.)

Das muss auf jeden Fall raus – denn du hast hier bei bplaced nicht die Rechte, diese Option zu setzen. (Ist aber per Default schon gesetzt.)

[quote=“chrisb”]Options +FollowSymlinks
Das muss auf jeden Fall raus – denn du hast hier bei bplaced nicht die Rechte, diese Option zu setzen. (Ist aber per Default schon gesetzt.)[/quote]

Hallo chrisb,

jetzt wenn ich das Setup aufrufe bekomme ich: diese Meldung…

Habe auch versucht die “index.php” und die “oxsetup.php” im Setup Verzeichnis aufzurufen, dabei habe ich auch eine ähnliche Meldung bekommen.

In der Anleitung stand doch man sollte im binär Modus hochladen, könnte das damit zusammenhängen. Bei mir war automatisch eingestellt (filzezilla).

Edit: Im Oxid Forum (wo ich ebenfalls nachgefragt habe), scheinen diese eher interessiert zu sein mich von bplaced abzuwerben, als mir zu helfen. =)

Sollte ich einen anderen kostenfreien Webshop testen ?

:wink: ,
Danny77.

Habs grad eben mal getestet und 0 Probleme - bist du sicher, dass alle Daten übertragen wurden? Da hatte ich nämlich einige Probleme gehabt und musste erst FileZilla entsprechend einstellen, damit die größeren Dateien auch ohne Probleme übertragen wurden…
Hatte bei rund 200 Dateien Probleme - da kann der Script schonmal spinnen, wenn die fehlen :smiley:

lg

[quote=“siegener89”]Habs grad eben mal getestet und 0 Probleme - bist du sicher, dass alle Daten übertragen wurden? Da hatte ich nämlich einige Probleme gehabt und musste erst FileZilla entsprechend einstellen, damit die größeren Dateien auch ohne Probleme übertragen wurden…
Hatte bei rund 200 Dateien Probleme - da kann der Script schonmal spinnen, wenn die fehlen :smiley:

lg[/quote]

Hallo Siegener89,

vielen Dank fürs testen.

Dann scheint doch das Problem bei mir zu liegen. Wie unerwartet :unamused: .

Welche Einstellungen hast du denn gesetzt ?
Unter anderem auch den Binär Modus ?

:wink: ,
Danny77.