![]() Mailinglisten-Archive |
Hallo Bj�rn, Bj�rn Dautermann wrote: > foreach ( $_POST['kartonart'] as $k => $v ) { // $k = key, $v = value > echo $k, $v; $_POST['kartonart'] ist nun ein indiziertes Array. Die Schl�ssel holst du laut Schleifendefinition in $k und die Werte in $v. > if ((isset ($v)) AND (isset($_POST['menge'][$k]))) { Mit $k kommst du hier nicht weiter, da von HTML eh nur die geklickten Checkboxen �bergeben werden (im Gegensatz zu den Inputfeldern). Alle nicht abgehakten Checkboxen werden nicht im $_POST['kartonarten'] auftauchen. Folglich werden die Schl�ssel im Array ohne die fehlenden Checkboxen durchnummeriert. Der erste Eintrag im Array $_POST['kartonart'] hinter Index 0 kann nicht zwingend in Verbindung mit dem ersten Eintrag im Array $_POST['menge'] gesetzt werden. Vielmehr entspricht nun eine Checkbox mit dem Wert 2 dem dritten Eintrag im Array $_POST['menge']. Die dritte Checkbox bezieht sich auf Kartonart 2, genau so wie das dritte Eingabefeld (Schl�ssel = 2). Du musst also �ber die Werte der gew�hlten Kartonarten gehen und dann die entsprechende Menge dazusuchen. $bestellung = array(); foreach ( $_POST['kartonart'] as $i => $art ) { // Bestellung wird nur ber�cksichtigt wenn zur Art auch eine Menge angegeben wurde if ( $_POST['menge'][$art] > 0 ) { $bestellung[$art] = $_POST['menge'][$art]; } } Und die Eintr�ge in $bestellung kannst du ja dann nach Belieben mit foreach aufsummieren. regards, Ringo
php::bar PHP Wiki - Listenarchive