1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Warenkorb bestellte Sachen auslesen mit PHP

Discussion in 'Programmieren' started by Donna, Sep 1, 2012.

Thread Status:
Not open for further replies.
  1. Donna

    Donna Byte

    Hallo.
    Immer wenn ich den Warenkorb hertu, und zuvor ein paar Sachen bestellt habe, zeigt er diese Waren nicht an. Die bestellten Artikel die unter der Tabellenüberschrift aufgelistet sein sollten, bleiben leer, es erscheint nur die Tabellenüberschrift.

    Ich hab euch mal die beiden Quelltexte angehängt, ich wäre euch dankbar wenn ihr mal rüber schaut, und das Problem findet.

    Hier der Quelltext für die Eingabe der Bestelldaten

    <h1 align="center">Geben Sie hier Ihre Bestelldaten ein:</h1>
    <div style="position:absolute; top:296px; left:1000px; width:516px; height:270px">

    <img border="0" src="Bilder/lieferservice.gif" width="316" height="253"><p>

    </div>


    <div style="position:absolute; top:326px; left:80px; width:318px; height:201px">
    <img border="0" src="Bilder/pizza-lieferservice_33886908_XS.jpg" width="302" height="197">
    </div>

    <div style="position:absolute; top:174px; left:414px; width:516px; height:270px" align="center">


    <?php

    $pizza_feld = array ("Margherita" =>"4,50 €", "Rosario"=>"4,50 €", "Salami"=>"3,00 €", "Schinken"=>"3,50 €","Funghi"=>"5,50 €",
    "Florshain"=>"6,50 €", "Flippa"=>"6,00 €", "Hawaii"=>"4,00 €","Gemüse"=>"3,55 €", "Tonno"=>"5,00 €", "Käse"=>"4,90 €");?>
    <form action="Warenkorb.php" method="POST">
    <table border="1">
    <tr>



    <td valign="center">

    <table border="1" bgcolor="orange" align="center" style="font-size:16pt; font-family: Verdana">

    <?php
    foreach ($pizza_feld as $key => $value)
    {
    echo "<tr><td width=\"90\" height=\"30\" bgcolor=\"red\" align=\"center\" valign=\"middle\" ><select name=\"Menge\">
    <option value=\"0\">0</option>
    <option value=\"1\">1</option>
    <option value=\"2\">2</option>
    <option value=\"3\">3</option>
    <option value=\"4\">4</option>
    <option value=\"5\">5</option>
    <option value=\"6\">6</option>
    <option value=\"7\">7</option>
    <option value=\"8\">8</option>
    <option value=\"9\">9</option> </select> </td>
    <td>$key</td><td>$value</td> </tr>"; } ?>

    <tr><td colspan="3" align="center"><input type="submit" name="Bestellung" value="Weiter"></td></tr>
    </table>

    </td>

    </tr>
    </table>

    </form>
    </div>

    </body>
    </html>

    Dann der Quelltext für die Ausgabe des Warenkorbs

    <?php session_start(); include("nav.php"); ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title></title>
    </head>
    <body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

    <?php
    if(isset($_POST["Bestellung"]))
    {
    while (list($key, $value) = each($_POST))
    {
    if ($value>=1)
    {
    $_SESSION[$key] = floor($value);
    }
    else
    {
    if(isset($_SESSION[$key]))
    {
    unset($_SESSION[$key]);
    }
    }
    }
    }


    echo"<table border='1'>
    <tr><th>Pizzaart</th><th>Preis</th><th>Menge</th></tr>";
    while (list($key, $value) = each($_SESSION))

    {
    echo "<tr><td>$key</td><td>$pizza_feld[$key]</td>
    <td>$value</td></tr>";
    }







    echo"</table>";
    ?>




    </body>
    </html>



    Ich wäre euch wirklich dankbar wenn ihr mir weiter helft.

    liebe grüße
    donna
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Es gibt bei dir nur einen Wert "Menge", der übermittelt wird. Mach in der Ausgabe als Erstes ein

    print_r($_POST);

    dann siehst du, was ankommt.
     
  3. Donna

    Donna Byte

    Danke für deine Hilfe.

    Hab das jetzt ausgebessert.

    echo "<tr><td width=\"90\" height=\"30\" bgcolor=\"red\" align=\"center\" valign=\"middle\" ><select name=\"Menge[]\">


    Bei print_r($_POST); kommt das
    Array ( [Menge] => Array ( [0] => 9 [1] => 0 [2] => 0 [3] => 0 [4] => 0 [5] => 0 [6] => 0 [7] => 0 [8] => 0 [9] => 5 [10] => 2 ) [Bestellung] => Weiter )
    Ich hab auch bei dem ersten Mengenfeld auf 9 umgestellt, das vorletzte auf 5, und das letzte auf 2 gestellt, daher funktioniert das jetzt.

    Aber bei der Ausgabe wird immer noch nichts angezeigt.
    Was muss daher da noch ändern das er auch da alle ausgewählten Daten auflistet?

    Wäre dankbar wenn ihr mir nochmal helft.


    lg Donna
     
  4. kalweit

    kalweit Hüter der Glaskugel

    Code:
    foreach ($_POST["Menge"] as $artikel => $anzahl) {
    echo "Artikel: ".$artikel." | Anzahl: ".$anzahl."<br />";
    }
    
     
  5. Donna

    Donna Byte

    danke das du mir nochmal geholfen

    Und wie kann ich noch die Bezeichnung und den Preis ausgeben.

    Denn jetzt steht dann ja nur da Artikel: 1 | Anzahl: 5 beispielsweise.

    Und wenn ich möchte das dann da steht

    statt Artikel1
    Margherita | Anzahl: 5 | Preis: 4,50 €
    weil die Bezeichnung und den Preis müsste er ja dann aus der Bestellung.php (1. aufgeführter Quelltext) auslesen.

    Ist das überhaupt möglich, oder ist das zu kompliziert.

    Ich wäre dir dankbar wenn du mir nochmal helfen würdest.

    liebe Grüße Donna
     
Thread Status:
Not open for further replies.

Share This Page