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