Mailinglisten-Archive |
Anzeige des wagens mit möglichkeit die anzahl zu ändern //snip reset($cart); while(list($produkt_id,$product_data) = each($cart)) { reset($product_data); while (list(,$product_data_arr) = each($product_data)) { $neuanz = "neuanz"; $neuanz .= "[$produkt_id]"; $produkt = "produkt"; $produkt .= "[$produkt_id]"; echo $produkt_id; echo $product_data_arr["name"]; echo "<input type=hidden name='$produkt'><input type=text size=3 name='$neuanz' value='".$product_data_arr["menge"]."'>"; echo $product_data_arr["preis"]; } } //snap und hier soll der wagen neu berechnet werden: //snip if(isset($neuanz)) { reset ($neuanz); while(list ($eins, $menge) = each($neuanz)) { if($menge && $menge != 0) { while(list($nummer,$product_data_arrs) = each($cart)) { reset($product_data_arrs); while (list(,$product_data_arr) = each($product_data_arrs)) { if($nummer == $eins) { $new_menge = $menge; /////////// UND HIER HAKTS ////////////////// array_splice($cart[$eins][], $new_menge); ///////// Wie muß ich das hier fomulieren, damit nicht ein neuer eintrag erstellt wird, sondern der schon vorhandene (mit $eins) einfach "überschrieben" wird? // so wird der wagen geschrieben, wenn der eintrag noch nicht vorliegt // $cart[$eins][] = array("name"=>$product_data_arr["name"], "preis"=>$product_data_arr["preis"], "menge"=>$new_menge); }}}}}} /snap das war jetzt die etwas ausführlichere version. mir mangelt es am versätndnis von array_splice() wäre nett, wenn mir jemand auf die sprünge helfen könnte vielen dank für eure mühe Boris PItule
php::bar PHP Wiki - Listenarchive