Anzahlen gleicher Artikel im Warenkorb addieren

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

  • Anzahlen gleicher Artikel im Warenkorb addieren

    Hi,
    weiss nicht, ob das ein sql oder php problem ist:

    Ich möchte, wenn jemand bereits 20 mal artikel 1 im warenkorb hat, und er jetzt nochmal 10 mal artikel 1 kauft, dass dann im warenkorb anzahl bei artikel 1 auf 30 gesetzt wird.

    eigentlich halb so wild, hab meine kauf.php um eine if schleife erweitert:
    PHP-Code:
    $abfrage3=mysql_query("SELECT * FROM warenkorb WHERE artikelnr='$artnr' AND Besuchernummer='$sessid' AND Farbe='$farbe'");
    $anzahl_treffer mysql_numrows($abfrage3);
    if(!
    $anzahl_treffer)
                    {
    artikel liegt nicht im warenkorb und wird eingetragenklappt
                    
    }
    else 
        {
        
    $daten3=mysql_fetch_array($abfrage3);
        
    $wnr $daten3[Warenkorbnr];
        
    $anzahl=$menge+$daten3[Anzahl];
          
    AUSGABE FUNKTIONIERT UND IST RICHTIGmit ECHO$variablen
        $change 
    mysql_query("UPDATE warenkorb SET Anzahl ='$anzahl' WHERE warenkorbnr ='$wnr'");

    vielleicht steht ja irgendwas an der falschen Stelle, oder stört es, dass die Tabelle bereits oben abgefragt wird? eigentlich doch nicht oder?

    Dankbar für Hilfe
    Zuletzt geändert von thargor1; 01.09.2003, 16:42.

  • #2
    Hat sich erledigt!
    Habs beim Posten entdeckt, sorry wenn sich schon jemand gedanken gemacht hat!

    Habe das Post schon korrigiert, vielleicht hilft das ja irgendwem mal weiter, kann aber auch gelöscht werden...

    Kommentar


    • #3
      ich würde immer einen insert in den warenkorb machen. ein vernüftiges UNIQUE (user,artikel) vorausgesetzt.

      dann bekommst du von der db einen error 1023 (glaube ich). wenn der fehler auftritt machst du dann das update.
      UPDATE warenkorb SET anzahl = anzahl + neuemenge WHERE user = 1 AND artikel = 2

      so würde ich das machen.
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        Original geschrieben von thargor1
        Hat sich erledigt!
        Habs beim Posten entdeckt, sorry wenn sich schon jemand gedanken gemacht hat!
        und das postest du , wenn ich schreibe...

        naja. vielleicht kannst du deine tabelle noch überdenken...
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          hehe jo

          danke aber trotzdem, ich werde das auf jeden fall überdenken, dein vorschlag klingt auch professioneller, als meine lösung, meine tabellen sind sowieso noch nicht optimal, aber ich mach das auch erstmal so, dass alles läuft, später gehts dann ans optimieren.

          sorry nochmal für das post, aber ohne hätt ich vielleicht noooch länger gesucht!

          Kommentar


          • #6
            eine DB wird VORHER optimiert und gut durchdacht.

            wenn du die DB ändern willst, nachdem dein script fertig ist, wirst du nciht viel freude haben. 1. musst du quasi alles neu schreiben und 2. wirst du dich nciht einfach an die vorhandenen tabellen dranwagen, um die strukturen neu zu setzen.

            bedenke das....
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar

            Lädt...
            X