sabine: onlineshop - cms - was übergebe ich am Besten?

Hallo!

Ich bastle an einer Website mit CMS und Onlineshop. Das CMS klappt bereits im Großen und Ganzen, aber beim Onlineshop hakt es so ein bisschen ...

Ich habe bisher auf der Website meine Werte im URL übergeben - habe z.B. Kategorien, Unterkategorien und in diesen Produkte, dabei habe ich beim Aufruf der Unterkategorienseite die ID der entsprechenden übergeordneten Kategorie über die URL mitgeschickt.

Soweit so gut, klappt ja alles recht gut, aber irgendwie stecke ich jetzt fest. War das überhaupt klug so vorzugehen? Ich weiß nicht wie ich jetzt den Sprung zum Onlineshop bzw. Warenkorb schaffe. Hier muss ich dann ja den Artikel und die Menge des Artikels den der Besucher gewählt hat irgendwie übergeben und vor allem soll das ganze ja gespeichert bleiben, damit der Besucher weiter einkaufen kann.

Kann ich den Sprung vielleicht durch eine weitere Tabelle schaffen in der ich quasi die bestellten (oder vielmehr ausgesuchten Artikel und Mengen speichere, so quasi Bestellitems?

Damit das ganze richtig zugeordnet wird muss ich dann wahrscheinlich sessions verwenden, oder? Welchen Wert übergebe ich dann mit session_register() , einfach die ID des jeweiligen Bestellitems? Ich blicke da nicht ganz durch ... ist wahrscheinlich auch nicht zu übersehen :)

Also nochmals als Praxisbeispiel - mein Besucher sieht sich ein bestimmtes Produkt an, dieses hat den Url ...prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id ... Auf dieser SEite hat er nun Infos zum Produkt und unter anderem ein Textfeld in das er die Bestellmenge eintragen kann und einen Submitbutton, mit dem er den Artikel in der gewünschten Menge dem Warenkorb hinzufügen kann ...

So und hier ist nun mein Problem - wie übergebe ich dies nun
hänge ich da an prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id z.B. noch quantity=$quantity an? Und mache dann eine SQL-Abfrage in der ich die $prod_id und die $quantity in der Tabelle Bestellitems speichere mit automatischer item_id ?

Aber wenn ich so vorgehe, fehlt mir ja immer noch was, oder? Ich weiß bei dem Vorgehen noch immer nicht, welche Bestellitems zu einer Bestellung an einen bestimmten Besucher gehören ...

Ich bin für jeden Denkanstoß dankbar!!!

Sabine

  1. Hallo Sabine,

    Kann ich den Sprung vielleicht durch eine weitere Tabelle schaffen in der ich quasi die bestellten (oder vielmehr ausgesuchten Artikel und Mengen speichere, so quasi Bestellitems?

    Verwende eine DB-Tabelle, die mindestens eine Produkt-ID und eine Anzahl pro Produkt speichert.

    Damit das ganze richtig zugeordnet wird muss ich dann wahrscheinlich sessions verwenden, oder? Welchen Wert übergebe ich dann mit session_register() , einfach die ID des jeweiligen Bestellitems? Ich blicke da nicht ganz durch ... ist wahrscheinlich auch nicht zu übersehen :)

    Die Session-ID wird gemeinsam mit den gerade genannten Daten abgelegt. In diesem Beispiel bin nach diesem Prinzip vorgegangen: http://www.datenverdrahten.de/demoshop.

    Also nochmals als Praxisbeispiel - mein Besucher sieht sich ein bestimmtes Produkt an, dieses hat den Url ...prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id ... Auf dieser SEite hat er nun Infos zum Produkt und unter anderem ein Textfeld in das er die Bestellmenge eintragen kann und einen Submitbutton, mit dem er den Artikel in der gewünschten Menge dem Warenkorb hinzufügen kann ...

    So und hier ist nun mein Problem - wie übergebe ich dies nun
    hänge ich da an prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id z.B. noch quantity=$quantity an? Und mache dann eine SQL-Abfrage in der ich die $prod_id und die $quantity in der Tabelle Bestellitems speichere mit automatischer item_id ?

    Vielleicht ist es uebersichtlicher und konsistenter, jeweils die temporaeren Daten zu speichern und bei Bedarf wieder auszulesen.

    MfG, Thomas

    1. Hallo Thomas!

      Kann ich den Sprung vielleicht durch eine weitere Tabelle schaffen in der ich quasi die bestellten (oder vielmehr ausgesuchten Artikel und Mengen speichere, so quasi Bestellitems?

      Verwende eine DB-Tabelle, die mindestens eine Produkt-ID und eine Anzahl pro Produkt speichert.

      Also die einzelnen Items meiner Bestellung oder? In der Tabelle speichere ich dann z.B. Produkt 1 Anzahl 5 Produkt 7 Anzahl 2 ....

      Damit das ganze richtig zugeordnet wird muss ich dann wahrscheinlich sessions verwenden, oder? Welchen Wert übergebe ich dann mit session_register() , einfach die ID des jeweiligen Bestellitems? Ich blicke da nicht ganz durch ... ist wahrscheinlich auch nicht zu übersehen :)

      Die Session-ID wird gemeinsam mit den gerade genannten Daten abgelegt. In diesem Beispiel bin nach diesem Prinzip vorgegangen: http://www.datenverdrahten.de/demoshop.

      Aha - speichere ich hier dann also in meiner oben angelegten Tabelle zusätzlich die Session_id? Und wenn ich von meiner Produktseite aus etwas in den Warenkorb lege, hänge ich an meinen URL die SessionID an?

      Also nochmals als Praxisbeispiel - mein Besucher sieht sich ein bestimmtes Produkt an, dieses hat den Url ...prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id ... Auf dieser SEite hat er nun Infos zum Produkt und unter anderem ein Textfeld in das er die Bestellmenge eintragen kann und einen Submitbutton, mit dem er den Artikel in der gewünschten Menge dem Warenkorb hinzufügen kann ...

      So und hier ist nun mein Problem - wie übergebe ich dies nun
      hänge ich da an prod.php?cat_id=$cat_id&subcat_id=$subcat_id&prod_id=$prod_id z.B. noch quantity=$quantity an? Und mache dann eine SQL-Abfrage in der ich die $prod_id und die $quantity in der Tabelle Bestellitems speichere mit automatischer item_id ?

      Vielleicht ist es uebersichtlicher und konsistenter, jeweils die temporaeren Daten zu speichern und bei Bedarf wieder auszulesen.

      Das verstehe ich jetzt nicht ganz, was du damit meinst ... Welche temporären Daten? die Sessiondaten? Also wie oben beschrieben Session_id übergeben?

      Danke im Voraus.
      Sabine

      MfG, Thomas

      1. Hallo Sabine,

        Verwende eine DB-Tabelle, die mindestens eine Produkt-ID und eine Anzahl pro Produkt speichert.
        Also die einzelnen Items meiner Bestellung oder? In der Tabelle speichere ich dann z.B. Produkt 1 Anzahl 5 Produkt 7 Anzahl 2 ....

        Ja.

        Aha - speichere ich hier dann also in meiner oben angelegten Tabelle zusätzlich die Session_id? Und wenn ich von meiner Produktseite aus etwas in den Warenkorb lege, hänge ich an meinen URL die SessionID an?

        Ja.

        Das verstehe ich jetzt nicht ganz, was du damit meinst ... Welche temporären Daten? die Sessiondaten? Also wie oben beschrieben Session_id übergeben?

        Ja.

        Ich habe im Beispiel jeweils noch das Datum abgelegt, um "Datenmuell" von nicht realisierten Bestellungen wieder entfernen zu koennen. Dazu loescht das Startscript alle Warenkorbeintraege, die aelter als 24 Stunden sind.

        MfG, Thomas

        1. Hallo Thomas!

          Danke für die rasche Antwort.

          Ich habe im Beispiel jeweils noch das Datum abgelegt, um "Datenmuell" von nicht realisierten Bestellungen wieder entfernen zu koennen. Dazu loescht das Startscript alle Warenkorbeintraege, die aelter als 24 Stunden sind.

          Ist soweit für mich alles klar, nur ergibt sich für mich nun ein großes Problem. Wie übergebe ich nun meine cat_id, subcat_id und prod_id? Ich habe diese Daten bisher eben über den Url übergeben um die richtige Kategorie, Unterkategorie bzw. Produkte anzeigen zu lassen. Wie mache ich das jetzt? Kann (soll) ich das auch noch an den URL anhängen? Und wenn ja, wie hänge ich das richtig an? Auf der Kategorienseite übergebe ich nur die cat_id, auf der Produktseite alle 3 IDs ...
          Und wenn nein, wie kann ich die Werte sonst übergeben?

          Danke im Voraus!!
          Sabine

          MfG, Thomas

          1. Hallo Sabine,

            Ist soweit für mich alles klar, nur ergibt sich für mich nun ein großes Problem. Wie übergebe ich nun meine cat_id, subcat_id und prod_id? Ich habe diese Daten bisher eben über den Url übergeben um die richtige Kategorie, Unterkategorie bzw. Produkte anzeigen zu lassen. Wie mache ich das jetzt? Kann (soll) ich das auch noch an den URL anhängen? Und wenn ja, wie hänge ich das richtig an? Auf der Kategorienseite übergebe ich nur die cat_id, auf der Produktseite alle 3 IDs ...
            Und wenn nein, wie kann ich die Werte sonst übergeben?

            Tja, das kommt etwas auf Deine konkrete "Daten-Infrastruktur" an. Man kann die Daten an die URL haengen (bei GET ist bei 2 KB Schluss), in der DB-Tabelle zwischenlagern oder in hidden-Formularfeldern weiterreichen. Suche Dir eine passende Variante bzw. Kombination aus.

            MfG, Thomas

            1. Hallo Thomas!

              Tja, das kommt etwas auf Deine konkrete "Daten-Infrastruktur" an. Man kann die Daten an die URL haengen (bei GET ist bei 2 KB Schluss), in der DB-Tabelle zwischenlagern oder in hidden-Formularfeldern weiterreichen. Suche Dir eine passende Variante bzw. Kombination aus.

              Ich habe es mittlerweile geschafft, leider bin ich aber inzwischen nicht in SelfHTML reingekommen, weiß nicht was da los war. Ich habe es durch eine Kombination aus hidden_field und Anhängen an den Url realisiert, bis jetzt klappt es ganz gut.

              Danke nochmals für deine Hilfe.

              lg
              Sabine

              MfG, Thomas