Hallo,
ein assoziatives Array soll mit Schlüssel und 3 von 4 Wertspalten angezeigt werden. Die letzte Spalte wird nur zur Berechnung gebraucht.
Folgender Code (Ausschnitt):
$zaehler = 1;
$key = key($korb);
foreach ($korb as $wert)
{
$gesamt = sprintf("€%7.2f ", $wert[1] * $wert[2]);
$zeile = "<tr><td>$zaehler.</td><td>$key</td>";
$zeile .= "<td>$wert[0]</td><td align=right>$wert[1]</td><td>€ $wert[2]</td><td align=right>$gesamt</td></tr>";
echo $zeile;
$sumItem = $sumItem + $wert[1]; //Gesamtzahl aufsummieren
$sumPrice = $sumPrice + ($wert[1] * $wert[2]); //Gesamtpreis aufsummieren
$sumZeile = "<tr><td></td><td></td><td><b>Gesamtsumme:</b></td><td align=right><b>$sumItem</b></td>";
$sumZeile .= "<td></td><td align=right><b>€ ".number_format($sumPrice, 2, ',', '.')."</b></td></tr>";
$zaehler++;
next($korb);
$key = key($korb);
}
echo "$sumZeile</table>";
Wenn jetzt z.B. 6 Zeilen im Array sind, wird die 1., 3. und 5. korrekt ausgegeben. Die Zählvariable ($zaehler) zählt 1., 2., 3.
Irgendwie kapiere ich nicht wo der Fehler liegt! Eine ähnliche Schleife auf einer anderen Seite funktioniert einwandfrei.
Das Array sieht auch aus wie gewünscht (überprüft mit print_r).