WebShop Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • WebShop Problem

    Hi Leute,

    ich versuche mich gerade an meinem ersten WebShop. Bin auch schon recht weit. Nur macht mir der Warenkorb ein paar Probleme.

    Also wie in den meisten Tutorials beschrieben, habe ich für den Warenkorb eine eigene Tabelle: id, userid, article_id, quantity, timestamp.

    Einen Artikel kann ich schon in den Warenkorb legen und löschen auch wieder, alles kein Problem. Nur machen mir die Mengen ein Problem. Ich habe also neben jedem Artikel, der im Warenkorb liegt, ein Textfeld, in das ich die Menge reinschreiben kann. Nur brauche ich ja einen Button, der die Mengenaktualisierung vornimmt? Ein Formular in einem Formular, also mit 2 Action-Buttons geht ja nicht, oder?

    2. Problem:

    Wenn ich dann alle Mengen richtig eingestellt habe, muss ich die Artikel aus dem Warenkorb in die Bestellungs-Tabelle aufnehmen. Gibt es vielleicht einen Befehl wie "COPY" oder so?

    Tnx 4 Help,
    MfG Lukas

  • #2
    problem 1:

    mach doch einfach neben den textfeld den aktualisierungs-button.
    so hatt den jeder artikel sein eigenes formular.

    problem 2:

    nein. meines wissens nach nicht.
    du hast dein select, update, insert und delete.

    ideallösung: auslesen aus wc-tabelle, einschreiben in bestell-tabelle, löschen des wc-eintrags.

    RoNoX

    Kommentar


    • #3
      @RoNoX

      Danke erstmal für deine Vorschläge...

      das mit dem eigenen Formular ist natürlich keine schlechte Idee. Nur wenn nun jemand den Artikel in den Warenkorb legt und dann z.B. 15 Artikel drin hat und nun von jedem Artikel 2 haben möchte, dann ist es natürlich blöd, wenn er jeden Artikel zwischenaktualisieren muss.

      Bei Amazon geht das z.B. ganz normal. Da hast du 3 Artikel im Warenkorb und kannst von jedem Artikel in einem Zug alle Mengen ändern.

      Trotzdem werde ich deinen Vorschlag annehmen !

      Bezüglich des 2. Problems: Wie soll ich denn diesen Kopiervorgang machen? Mit einer For-Schleife?

      Tnx 4 Help!
      MfG Lukas

      Kommentar


      • #4
        Ok, nächsten Vorschlag.
        zu Problem 2: ja

        Du baust doch die Artikelliste sicher in einer while-schleife auf.
        dabei lässt du einen counter mitlaufen ($i++)
        diesen counter sendest du in einem hiddenfeld mit, und weisst wieoft die for-schleife beim updaten durchlaufen muss.
        ebenfalls kannst du noch ein hidden mitschicken, wo die alte warenkorbanzahl drinn steht. so brauchts du nach einem vergleich (if else)
        nur den datensatz aktualiesieren, wo die werte unterschiedlich sind.

        das ist nur eine möglichkeit. da fallen mir viele ein.


        greetz RoNoX

        ps: die meisten shop-benutzer kaufen (so denke ich) selten über 5 verschieden artikel ein.

        Kommentar


        • #5
          Oder aber du machst gleich auf der Artikel-Ansichtseite ein Feld, wo er die Anzahl gleich eingeben kann.

          Folgendes solltest du noch mit einbauen.
          Ist der Artikel schon im Warenkorb, muss ein UPDATE gefahren werden wenn der Käufer den gleichen Artikel nochmal von der Artikel-Ansichtseite in den Warenkorb legt.
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            @Wotan

            danke für den Hinweis. Ich habe das schon so gemacht, dass der Artikel nur einmal in den Warenkorb gelegt werden kann! Ist der Artikel bereits im Korb, wird ein Hinweis "Dieser Artikel befindet sich bereits im Warenkorb!" ausgegeben!

            Tnx 4 Help!

            Lukas

            Kommentar


            • #7
              Original geschrieben von skalu
              ..."Dieser Artikel befindet sich bereits im Warenkorb!" ausgegeben!
              Statt des Hinweise würde ich lieber die Anzahl hochzählen.
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                aber nicht ohne den user zu benachrichtigen oder?
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Wieso sollte ich den User benachrichtigen. Er wird bei mir nach jeden Artikel in den Warenkorb legen doch auch dahin geleitet und dann sieht er doch das er den einen oder andern Artikel mehrfach im Warenkorb hat, dies kann er ja im Warenkorb selber wieder ändern. Löschen oder Mehr oder weniger des Artikel hinzutun.
                  *winks*
                  Gilbert
                  ------------------------------------------------
                  Hilfe für eine Vielzahl von Problemen!!!
                  http://www.1st-rootserver.de/

                  Kommentar


                  • #10
                    na dann is ja gut

                    es soll ja shops geben, die mich nach nem klick auf "Bestellen" wieder zu der Seite leiten, auf der ich war und dann wäre imho ne kurze Benachrichtigung nicht schlecht

                    könnte man doch sowieso machen oder?
                    unter jedem artikel nen eintrag wie oft er bereits im warenkorb is (wenn nicht, eben keine anzeige) oder wär das nix?
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      Nein das ist zuviel aufwand und lohnt der Mühe nicht.
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar


                      • #12
                        Hi Leute,

                        habe nun ein weiteres Problem. Ich habe den Warenkorb nun fertig, aber ich möchte nun den Gesamtpreis berechnen.

                        Habe für den Warenkorb die Tabelle "shoppingcart". Da gibts eine Spalte "price" und eine "quantity". In dieser Tabelle steht nun für jeden Artikel, der im Warenkorb ist, ein Eintrag.
                        Wie kann ich nun den Gesamtpreis berechenen?

                        Txn 4 Help!
                        Lukas

                        Kommentar


                        • #13
                          Original geschrieben von skalu
                          Habe für den Warenkorb die Tabelle "shoppingcart". Da gibts eine Spalte "price" und eine "quantity". In dieser Tabelle steht nun für jeden Artikel, der im Warenkorb ist, ein Eintrag.
                          Wie kann ich nun den Gesamtpreis berechenen?
                          wenn du es schon im sql-statement machen möchtest, müsstest du zunächst den inhalt von spalte price mit dem von quantity multiplizieren, und anschliessend über dieses ergebnis pro datensatz mit SUM() die summe bilden.

                          schau mal im manual bei den berechnungsfunktionen nach.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            @wahsaga

                            Ok, ich habe es nun so gelöst, dass in einer Spalte "total_price" immer "price" und "quantity" multipliziert werden und dort hineingeschrieben werden. Nun muss ich nur mehr alle Werte aus "total_price" addieren.

                            Ich weiß nur nicht, wie ich die Werte aus der Tabelle in ein Array bekomme. Kannst du mir vielleicht dabei helfen? Zusammenzählen würde ich es dann mit "array_sum();"

                            Danke schon mal!
                            Lukas

                            Kommentar


                            • #15
                              PHP-Code:
                              $total_preis = Array();
                              $res mysql_query("SELECT * FROM tabelle WHERE spalte='$Besteller_Kennung'");
                              while(
                              $row mysql_fetch_array($res))
                              {
                              $total_preis[] = $row[total_price];

                              EDIT:
                              Ich würde es aber nicht mit der zusätzlichen Splate machen, sondern beim auslesen des Warenkorbs erst die Einzelsummen errechen lassen und dann aus den Einzelsummen den Gesamtpreis errechen.
                              Zuletzt geändert von Wotan; 20.07.2003, 10:12.
                              *winks*
                              Gilbert
                              ------------------------------------------------
                              Hilfe für eine Vielzahl von Problemen!!!
                              http://www.1st-rootserver.de/

                              Kommentar

                              Lädt...
                              X