PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   einzelnen wert in ner while schleife aus nem array löschen (http://www.selfphp.de/forum/showthread.php?t=6385)

Stifler 16.12.2003 00:38:22

einzelnen wert in ner while schleife aus nem array löschen
 
hallo

habe zwei probleme. aber zuerst kurze erklärung.

ich bastele an nem warenkorb und habe zweit dateien. artikel.php. wo der geünschte artikel angezeigt wird und dann wenn man auf bestellen klickt werden die werte artikelnummer und menge an die datei warenkorb.php geschickt und dort in der session gespeichert.

anhand der artikelnummer rufe ich den gewünschten artikel aus der dp und gebe ihn bzw sie dann ihn einer while schleife in ne tabelle aus. d.h. für jeden weiteren artikel wird die tabelle automatisch erweiter. funktioniert auch bis jetzt einwandfrei. nun möchte ich das der benutzer den warenkorb komplett löschen kann. das hab ich hinbekommen und funktioniert auch aber wie soll ich das anstellen das nur der wert aus der session gelöscht wird der angeklickt wird??

das zweite problem ist ich lasse mit der menge und dem preis den gesamtpreis des aritkels berechnen also bestellt werden

äpfel menge 2 einezlpreis 2euro = 4 euro
birnen menge 1 einzelpreis 3euro = 3 euro

dieser gesamtpreis wird auch in der while schleife berechnet und wird auch korrekt berechnet nur wie bekomme ich einen endpreis also in deisem fall 7 euro??? die antworten auf meine fragen sind für manche bestimmt ein witz aber für mich ist es zu zeit total unverständlich.

danke euch bereits im voraus.

mike

Stifler 16.12.2003 00:42:21

die while schleife sieht aus wie in dem letzten post von daddycool (danke nochmals daddy) http://www.selfphp.info/forum/showth...4&pagenumber=2

dann brauch ich denn nicht nochmal hier reinsetzten. nur der code danach hat sich geändert bzw ist erweitert worden

Phil 16.12.2003 00:57:08

Hi,
also die Frage, wie man einen einzelnen aus einem session array löscht würde ich auch gern wissen :)

was die summe angeht hab ich vielleicht ne Lösung, wenn auch nicht gerade eine schöne.

ich denke so gehts:

PHP-Code:

$summe_gesamt 0;
   while (
$korb_anzeigen mysql_fetch_array($korb)) { 
                
$artikelname $korb_anzeigen["Produktname"]; 
   
$preis $korb_anzeigen["Preis_Brutto"]; 
   
$gesamt $preis*$bestellmenge
   
//Gesamtpreis berechnen
   
$summe_gesamt $summe_gesamt $gesamt;

   
$preis number_format($preis2,",","."); 
   
$gesamt number_format($gesamt2,",",".");
   
$summe_gesamt number_format($gesamt2,",",".");
          
echo (
"<table width="80%" align="center"> 
    <tr> 
                 <td width="
10%">"$artikelname ."</td> 
                 <td width="
4%" align="center">"$eintrag["menge"] ."</td> 
                 <td width="
8%" align="right">"$preis ."</td> 
                 <td width="
8%" align="right">"$gesamt ."</td> 
                 <td width="
8%" align="center">löschen</td> 
          </table>"
);       

echo 
"Preis:".$gesamt_summe." Eusinos"

denke es gibt noch bessere Lösungen aber so sollte es funktionieren
- und vergiss vor allem nicht die 15euros Versandkosten :)

Ich hoffe es klappt
Gruß
Phil

c4 16.12.2003 07:05:02

Felder eines Arrays und Variablen kann man mit unset() löschen.

Zur Gesamtsumme: Entweder so, wie es Phil vorgeschlagen hat oder mit einer eigenen Abfrage. Dafür brauchst Du dann SUM().

Stifler 16.12.2003 09:38:44

morgen

also erst einmal danke das ihr so schnell geantwortet habt.

zu dem löschen der einzelnen produkten. hab gelesen das es mit array_splice am einfachsten zu lösen sein soll. hab die if anweisung nach der while schleife eingebaut und den löschen befehle natürlich vorher in ein form tag "post" geschrieben

PHP-Code:

//while schleife
<input type="submit" name="delete" value="Entfernen">
//ende der while schleife


//der ausgewählte artikel soll gelöscht werden
    
if($delete == "Entfernen"){
        
array_splice($_SESSION['warenkorb'], $artikelnummer);
    } 

naja es sieht zwar gut aus allerdings löscht er da garnix :(

Stifler 16.12.2003 10:06:07

so die berechnung hab ich nun etwas verändert und sie funktioniert. allerdings hab ich leider immer noch das probelm mit den einzelnen werten zu löschen :(

chris17 16.12.2003 10:29:52

Hi,

zum Thema Element aus Array löschen.
Eine Möglichkeit mit unset(), wie c4 vorgeschlagen hat:
PHP-Code:

$array = array("artikel1","artikel2","artikel3");

for(
$i 0$i count($array); $i++) {
    
    echo 
$array[$i]."<br>";

}

unset(
$array[1]);// artikel2 löschen
$array array_values($array);// Wichtig bei num. Array

echo "<hr>";
for(
$i 0$i count($array); $i++) {
    
    echo 
$array[$i]."<br>";



Grüsse

Christian


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:54:37 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.