Ankündigung

Einklappen
Keine Ankündigung bisher.

2 Felder einer Tabelle zusammenrechnen!

Einklappen

Neue Werbung 2019

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

  • 2 Felder einer Tabelle zusammenrechnen!

    Hallo,
    wie ihr evtl. schon mitbekommen habt, bin ich zur Zeit an einem Warenkorb, für einen OnlineShop!

    Nun möchte ich, wie es für ein Warenkorb üblich ist, die Preise der Artikel zusammenrechnen.
    Da ist auch mein Problem.

    Und zwar, wie rechne ich, von den im Warenkorb liegenden Artikel, die Preise zusammen?

    Hier der Ausschnitt meines Scripts:

    PHP-Code:
            <?php
    require("config.inc.php");

    $ipaddr $_SERVER["REMOTE_ADDR"];


    $query mysql_query("SELECT * FROM bestellung LEFT JOIN artnr ON artnr.artnr = bestellung.artnr WHERE ip = '$ipaddr'");

    while(
    $row mysql_fetch_object($query))
        {
        echo 
    "<table border='0'>";
                echo 
    "<tr>";
                
    /* 1. Spalte */
                        
    echo "<td>";
                            echo 
    "<table border='1'>";
                                echo 
    "<tr><td>$row->artnr";
                            echo 
    "</td></tr>";
                        echo 
    "</table>";
                    echo 
    "</td>";
            
    /* 2. Spalte */
                    
    echo "<td>";
                        echo 
    "<table border='0'>";        
                                echo 
    "<tr><td width='100'>";
                                echo 
    "</td></tr>";
                            echo 
    "</table>";
                        echo 
    "</td>";
            
    /* 3. Spalte */
                    
    echo "<td>";
                        echo 
    "<table border='1'>";        
                                echo 
    "<td>$row->price";
                                echo 
    "</td></tr>";
                            echo 
    "</table>";
                        echo 
    "</td>";
                    
                echo 
    "</tr>";
            echo 
    "</table>";
        
    }
    ?>

  • #2
    Du machst das immer noch über die IP. Das wird einfach nur Mist, wenn du keine Sessions benutzt. Gründe dazu in dem anderen Thema.
    Gruß

    Kommentar


    • #3
      Die Bemerkung meines Vorgängers möchte ich unterstützen.

      Ansonsten:
      Vor der while-Schleife $total_price = 0.00;
      In der while-Schleife:
      $total_price = $total_price + $row->price;

      Tatsächlich braucht man in einem vernünftigen Warenkorb die Gesamtsumme mal mit - mal ohne - MwSt....

      War das die Frage????

      Kommentar


      • #4
        Also ich habe denjenigen noch einmal gefragt ob das schlimm sei, im ist es egal!
        Aber ich werde das später als Überraschung für den einbauen!

        Nun probiere ich mal dein code aus, gabriele-mohl.

        Kommentar


        • #5
          Ich habe leider noch einen kleinen aber merkbaren Fehler.
          Und zwar:

          PHP-Code:
                              echo "<table border='1'>";        
                                      echo 
          "<tr><td>";
                                      
          $total_price $total_price $row->price;
                                      echo 
          "$total_price";
                                      echo 
          "</td></tr>";
                                  echo 
          "</table>";    
                              echo 
          "</td>"
          Wo ist da mein Denkfehler?
          Vor der While Schleife, direkt unter der IP Auslesung steht:

          PHP-Code:
          $total_price 0.00

          Kommentar


          • #6
            Dein Denkfehler ist, dass du das mit einer IP versuchst!
            Und außerdem wäre es ganz praktisch, wenn du den Fehler auch benennst und nicht nur Code hinklatschst. Außerdem ist es nicht sehr sinnvoll, den Gesamtpreis auszurechnen und ihn dann auszugeben, dann hast du das ja hinter jedem Artikel. Das kann ja nicht gewollt sein, die Berechnung muss innerhalb der Schleife stattfinden und die Ausgabe danach. Ist doch logisch.
            Gruß

            Kommentar


            • #7
              Könnte mir einer das Script so umformen das er den Gesamtpreis der Artikel angibt?

              Denn so, wie schon geschrieben, wird hinter jedem Artikel der Preis angezeigt, also von dem Artikel wo es auch hinter steht!

              Kommentar


              • #8
                XGamer, ich hoffe, sowas tut niemand. Dadurch lernst du ja nichts.
                Du musst einfach die Ausgabe für den Gesamtpreis hinter die Schleife setzen. Das ist ja auch logisch, weil erst dann der Gesamtpreis berechnet ist. In der Schleife lässt du allerdings die Berechnung für den Preis.
                Und vergiss das mit der IP nicht. Das gibt sonst ein riesiges Durcheinander
                Gruß

                Kommentar


                • #9
                  Deine Feststellung stimmt XGamer. Was sollte $total_price denn sonst da tun, wo Du es hin getan hast? Kann man es auch woanders hin tun?

                  Na ja... Weiß nicht, ob mein Kommentar nicht eher verwirrend war...

                  Kommentar


                  • #10
                    Na ja...

                    Kommentar


                    • #11
                      Nein, eure Hilfe, auch deine gabriele-mohl (letzter Post), war nicht verwirrend.
                      Ich habe es nun fertig, zumindest den Teil.
                      Allerdings möchte ich gerne das er auch die ersten beiden Stellen nach dem Komma anzeigt.

                      Habt ihr da eine Idee?

                      Zur zeitiger Code:
                      PHP-Code:
                      ..... /+ while Schleife wird geöffnet */ ...
                      $total_price $total_price $row->price;
                          
                      } <--- While 
                      Schleife wird geschlossen!
                      echo 
                      "$total_price"

                      Kommentar


                      • #12
                        guck dir mal die Funktion [MAN]number_format[/MAN] an
                        Gruß

                        Kommentar


                        • #13
                          Danke dir, allerdings zeigt er mir einen Fehler an:

                          Parse error: syntax error, unexpected ',' in /data/apache/users/kilu.de/sbtuning/www/warenkorb.php on line 47
                          Ich denke mal er kann die, in der Klammer stehenden, Kommas nicht verarbeiten. Also z.B. zwischen $number und 2:
                          PHP-Code:
                                  $total_price $total_price $row->price;
                              
                          $number $total_price;
                              
                          $ausgabe = ($number2''''); 
                          Wie umgehe ich das? Sitze da schon ca. 10 Minuten dran!

                          Kommentar


                          • #14
                            Was soll denn eine reine Klammer bedeuten, in der mehrere Werte durch Komma getrennt stehen?
                            Möchtest Du da vielleicht den Funktionsnamen davor schreiben?
                            Die Werte in der Klammer sehen aus, als könnten sie Parameter für number_format sein. Nur ohne Funktionsnamen wird das nix mit einem Funktionsaufruf.

                            Kommentar

                            Lädt...
                            X