Hi,
Nun, da fehlt z.B. noch der Inhalt deiner Variablen, an der Stelle des Scripts, um den Fehler nachstellen zu können.
$i = 0;
foreach ($warenkorb as $key => $value){
## Der $warenkorb besteht aus: Name, Kategorie, id und anzahl
$normal="...andereText...<input type=text name=extras[] value=".$_REQUEST['extras'][$i].">".$i."</td> ... noch mehr text... ";
mit $normal sollen die daten angezeigt werden, wenn jetzt auf submit gedrückt wird soll die texteingabe an der richtigen position wieder erscheinen.
if ($value['kategorie'] == $Kategorie1 && $Kategorie1 != ''){ ## Nun soll er wenn die richtige Kategorie im durchlauf dabei ist die Daten über "$normal" ausgeben.
for ($b = 0; $b < $value['anzahl']; $b++){ ## Je nach Anzahl soll es mehrfach ausgegeben werden
if ($value['kategorie'] == $Kategorie1 && $value['anzahl'] > $b){ $i++; echo $normal;}
Wenn ich nach dem "$i++;" das $i mit echo ausgebe zeigt er mir die richtige anzahl an, nur in der "$normal" ausgabe wird immer nur die erste Zahl angezeigt.
}}
if ($value['kategorie'] == $Kategorie2 && $Kategorie2 != ''){
for ($b = 0; $b < $value['anzahl']; $b++){
if ($value['kategorie'] == $Kategorie2 && $value['anzahl'] > $b){ $i++; echo $normal;}
}}
Der Fehler tritt auf wenn ich ein Produkt aus einer Kategorie mehr als einmal im Warenkorb habe(wenn anzahl höher als 1).
Er addiert zwar das $i, gibt diesen Wert aber nicht an "$normal" weiter.