Andreas: Artikel entfernen

Beitrag lesen

Hallo!

Wie muss ich jetzt die Funktion hinter dem Minus-Button belegen?

naja, ich mache das normalerweise mit Links, an die ich in der Schleife die jeweilige Nummer des Artikels hänge. Aber ich würde das evtl. etwas anders machen:

die Produkt ID scheibe ich jetzt nicht in den Artikel-Array, sondern als key des Artikel array, dann kann man hinterher einfacher auf Artikel zugreifen/löschen:

$neuer_artikel = array ('Beschreibung' => $beschr,
                        'Preis' => $preis,
                        'Anzahl' => $anzahl);

// das geht so nicht mehr:
array_push($warenkorb,$neuer_artikel);

// sondern nur noch so:
$warenkorb[$PID] = $neuer_artikel;

//jetzt noch die Schleife anpassen:
foreach($warenkorb as $id => $artikel){
    echo $id;
    echo " - ";
    echo $artikel['Beschreibung'];
    echo " - ";
    echo $artikel['Preis'];
    echo "<br>";

// und jetzt der Link zum löschen:
    echo <a href="$PHP_SELF?delete=$id">entfernen</a>;
    echo "<br>";
}

So, jetzt hast Du einen Link auf dieselbe Seite, mit dem Parameter delete und dem Wert der jeweiligen Produknummer.

Jetzt mußt Du am Anfang der Seite abfragen, ob "delete" übergeben wird, also

if(isset($_GET['delete'])){
   // und jetzt nur das Element aus dem Array löschen:
   $del_id= $_GET['delete'];
   unset($warenkorb[$del_id]);
}

Vergiss nicht vorher

$warenkorb = $_SESSION["warenkorb"];

und nochwas:
Du brauchst gar kein session_register(hattest Du doch verwendet, oder?) mit

$_SESSION["warenkorb"] = $warenkorb ;

Wird der Wert in der Session automatisch überschrieben!

Nur dann darfst Du am Anfang nicht session_start() vergessen ;-)

Habe das aber alles nicht getestet!

Grüße
Andreas

PS: guck Dir mal folgende Seiten an uns bookmarke die:

zu arrays allgemein:
http://www.dclp-faq.de/ch-arrays.html
http://www.schattenbaum.net/php/array.php
http://www.php.net/manual/de/ref.array.php

zu Sessions
http://www.dclp-faq.de/ch-version4_session.html
http://www.php.net/manual/de/ref.session.php
(komme gerade nicht aufs php manual aber da ist auch noch ein sehr ausführliche Anleitung zu Arrays und wie das mit den Sessions funktioniert)