number_format funktioniert nicht - XAMPP

Descartes

Erfahrenes Mitglied
Hallo!

Leider komme ich einfach nicht mehr weiter. Mein erstes PHP-Skript funktioniert soweit tadellos. Bis auf die Funktion number_format. Meinen Code habe ich nun schon zig-mal durchgesehen, weiß aber nicht woran es liegen kann. Bei Eurobeträgen, werden, wenn diese gerade sind (z.B. 8 Euro) keine Nullen angehängt, so dass das Skript 8 Euro ausgibt, aber 8,00 Euro ausgeben sollte. Noch komischer sieht es bei Beträgen wie 8,50 Euro aus, da diese als 8,5 Euro ausgegeben werden.

Vielleicht hat hier ja jemand einen guten Rat parat. Den betreffenden Codeabschnitt habe ich mal mit eingestellt. Ich verwende XAMPP von http://www.apachefriends.org auf Windows 98 SE.

if (mysql_num_rows($resultp) > 0) {

while ($row=mysql_fetch_array($resultp)) {

//Berechne Bestellwert für User
$hilfsbrutto = $row[Bruttopreis];

//Berechnung der Zusatzkosten für Produkt 3
if ($row[Produktnr] === "3") {

$hilfsbrutto = ($zusatz * $hilfsbrutto);
number_format($hilfsbrutto,2,",","."); // 1.234,56 funktioniert nicht

//Fügt dem Array bei Produkt 3 spezifische Berechnung hinzu
array_push($bruttopreis,$hilfsbrutto);
array_push($produktbez,$row[Bezeichnung]." (".$zusatz." MB * ".$row[Bruttopreis]." Euro)");

} else {

//Fügt dem Array bei mehreren Produkten die weiteren jeweils hinzu
array_push($bruttopreis,$row[Bruttopreis]);
array_push($produktbez,$row[Bezeichnung]);
}

$summebrutto = ($summebrutto + $hilfsbrutto); // Typ $summebrutto ist double
number_format($summebrutto,2,",","."); // 1.234,56 funktioniert nicht

} //while - Datenbank auslesen resultp ist zu Ende
}

} // foreach Produkt - Array auslesen Ende

//Multipliziere Summebrutto mit Abrechnungszeitraum (6 Monate)
$summerechnung = ($summebrutto * 6);
number_format($summerechnung,2,",","."); // 1.234,56 funktioniert nicht

//Weise 16% Mehrwertsteuer aus
$mwst = round (($summerechnung / 100 * 16),2); //round liefert keine Nullen zurück
number_format($mwst,2,",","."); // 1.234,56 funktioniert nicht

//Errechne $summenetto
$summenetto = ($summerechnung - $mwst);
number_format($summenetto,2,",","."); // 1.234,56 funktioniert nicht

Grüße
Descartes
 
Du machst schon alles ganz richtig, du hast nur einen kleinen Denkfehler. Du weist keiner Variablen den Ergebniswert deiner Funktion zu. Deine Numberformat Funktion liefert einen String zurück .. nur wo wird der gespeichert ? Ich glaub jetzt kommst du auch selber drauf ;) ...

Edith sagt: Vor allen Dingen bei round( ) machst du es ja .. :)
 
Vielen Dank für die Hilfe

Hallo!

Vielen Dank Euch zwei!

Manchmal sieht man den Wald vor lauter Bäumen nicht ...

Wie konnte das nur passieren ... :)

Grüße

Descartes
 
Zurück