Summe zusammenzählen

  • Hallo,

    mein Warenkorb funktioniert sehr gut, nun möchte ich gerne noch die Summe zusammen zählen, das ist meine Funktion die ich bis jetzt habe:

    Meine Ausgabe sieht dann so aus

    Benötige ich jetzt eine zweite Funktion um den Preis zusammen zählen zu können, oder könnte ich dieses mit in meine Hauptfunktion bauen? Ich weiß dass ich es scheinbar direkt in MySQL machen kann mit SUM(wk_preis) AS 'betragKomplett' aber wie wende ich diese an? Auf PHP.net habe ich gelesen, es könnte wohl auch mit Array_sum machen, aber auch hier weiß ich nicht so recht, wie ich dieses anwenden soll.

    Vielleicht könnt ihr mir hier weiterhelfen. Der Preis soll natürlich nur einmal ganz am Ende meiner Auflistung stehen. Ich hoffe ihr versteht was ich meine.

    Edit: Mit einer Zusätzlichen Funktion geht es

    Einmal editiert, zuletzt von PHP-Frage (2. Juli 2015 um 17:47)

  • Du könntest zwar in der ersten Query SUM nutzen, würdest dann aber die Spalte `betragKomplett` mit dem Gesamtpreis in jeder Zeile bekommen.
    Das macht also wenig Sinn.
    Mit der Zusatzfunktion kannst Du das auch erledigen.
    Ich würde allerdings die Daten nutzen, die Du ja schon geholt hast - $warenkorb
    in etwa:

    btw: warum speicherst Du "," -separierte Beträge in der db ?(

  • Hallo cottton,

    vielen dank für deine Hilfe, ich verzichte auf meine Funktion und setzte es so um wie du es gemacht hast. Dazu hätte ich noch eine Frage, wenn für mich ist nicht ganz klar, wie du es schaffst, alle Beträge zusammen zu zählen ?( Ich nehme an, es liegt an dieser Zeit

    PHP
    $betragKomplett += $BruttoBetrag

    heißt das mit dem + kann man bei jedem Durchlauf der Schleife einen Betrag mit dranhängen? Hab dieses so noch nie gesehen.

    Außerdem hätte ich noch eine weitere Frage zum zählen, entweder kann ich bzw. OpenOffice nicht richtig zusammen zählen, oder PHP macht einen kleinen Fehler:

    Folgende Beträge sollen zusammengezählt werden:

    Zitat

    5,95
    13,39
    13,39
    5,95
    14,33
    14,33

    macht zusammen laut OpenOffice 67,34 Euro. Wenn ich dein PHP Code ausführen lasse, dann kommt 67,33 Euro raus. Ich meine wir reden wir von einem Cent, aber dennoch wäre es schön, wenn PHP richtig rechnet oder auch OpenOffice :)

    Zu deiner Frage warum ich beide Beträge speichere, das mache ich nicht :) In meiner Datenbank stehen Preise mit einem , also deutscher Schreibweise, deshalb lass ich die für bestimmte Funktionen wieder umrechnen, dass PHP damit rechnen kann.

  • Naja, es gibt einiges:

    PHP
    // beispiele:
    $num = $num + $c;
    // oder
    $num += $c;
    // ... geht auch mit -= ect

    ich denke Du hast was verdreht: die Werte die Du angibst sind schon mit MwSt. Wenn ich die durch die Funktion jage, bekomm ich > 80.
    Hab mal hier die MwSt weggelassen, damit wir beide auf das gleiche Ergebnis kommen:


    Bekomme 67,34 raus.

    Welche PHP-version nutzt Du?

    PHP
    echo PHP_VERSION;

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!