Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Sessions einzeln Ausgeben!

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Sessions einzeln Ausgeben!

    Hallo,
    ich hoffe das mir jemand helfen kann aber irgendwie versteh ich mein Problem nicht ganz

    Ich hab nen Onlineshop Tutorial gefunden und das Tutorial auch umgesetzt.
    Nun will ich mit meinen Wenigen Kentnissen etwas erweitern, allerdings gibt der Warenkorb wenn es eine ID mehrmals gibt (z.B. 3 mal ein Produkt in Warenkorb gelegt) nur Einmal das Produkt aus, mit der menge, nun möchte ich aber das er dann auch 3 mal das Produkt ausgibt! Code für die Zusammengefasste ausgabe:

    PHP-Code:
    $cart $_SESSION['cart'];
    if (
    $cart) {
    $items explode(',',$cart);
    $contents = array();
    foreach (
    $items as $item) {
    $contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1;
    } }
    else
    {
    echo 
    "";
    }
    foreach (
    $contents as $id=>$wkid) {
    echo 
    $wkid."<br/>";

    Währe Super wenn mir jemand helfen könnte und evtl gleich erklähren wieso das wie funktioniert Bin Ziemlicher anfänger ... mySQL ein und Ausgaben sind kein Problem, aber foreach hab ich noch niee benutzt!

    Hab mich heut schon kaputt gegoogelt

    Vielen Dank im Vorraus!

  • #2
    $contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1 : 1;

    Diese Zeile ist dafür entscheidend.
    Wenn das $item bereits existiert, wird die Anzahl einfach um 1 erhöht.

    du könntest z.B. so schreiben
    PHP-Code:
    $contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1
    if(isset(
    $contents[$item])) {
      
      
    $contents[$item . ($content[$item]+1)];

    Wobei das natürlich auf geratewohl ist - ich versteh auch nicht warum das sinnvoll wäre... Macht die Sache nur komplizierter und das System wurde nicht dafür geschrieben (ist ein unschönes workaround, wird höhstens einfach so auch nicht funktionieren).

    Kommentar


    • #3
      Hi, es Funktioniert leider nicht ... Sinn und Zweck des ganzen ist, weil ich es in die Datenbank schreiben will, und zwar jedes Produkt einzeln, und will nachher nur die Zeilen Zählen =)

      Kommentar


      • #4
        Was erhoffst du dir davon, wenn du ein und dasselbe Produkt dreimal in die Datenbank schreibst und die Zeilen zählst? Wieso nicht nur einmal in die Datenbank schreiben und ein Feld "Menge" einfügen?

        Kommentar


        • #5
          Einfach weil ich möglichkeiten lernen will Ich weiß das es ein wenig Sinnfrei klingt aber ich möchte einfach ausprobieren und lernen

          Kommentar


          • #6
            Einfach weil ich möglichkeiten lernen will Ich weiß das es ein wenig Sinnfrei klingt aber ich möchte einfach ausprobieren und lernen
            Dann lern bitte auch und verschone uns mit sinnfreien Aufgaben.

            Kommentar


            • #7
              Es klingt nicht nur sinnfrei, das ist es auch ... Probier mal folgendes:

              PHP-Code:
              foreach ($items as $item) {
                 
              $contents[$item] = 1;

              Kommentar


              • #8
                Danke Grevas und Trainmaster hab es gerade gelöst!

                Kommentar


                • #9
                  Hoffentlich verwirfst du deine Lösung möglichst schnell ... das ist einfach nur Murks.

                  Kommentar

                  Lädt...
                  X