[Aufgabe!] Problem

Banni

Mitglied
Hallo leute hab zu folgendem Code eine Aufgabe bekommen, die ich aber nicht weiß wie ich die realisieren soll:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
             <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
                 <title>Willkommen im Café Kaulard!</title>
                 <meta name="keywords" content="Kaulard, Café, Monschau, Kaffee, Kuchen, Torten, Busreisen, Spezialitäten, Bäckerei, Konditorei, Pralinen, Printen, Monschauer Dütchen, Vennbrocken, Eis, Gebäck, Kaffeestube, Confiserie, Monschauer Vennbrocken, Marzipan, Eifel, Wandern">
                 <link rel="stylesheet" href="styles.css">
    </head>

<body>

<?php
    $arrPrinten = array(     "No120a" => "No120 a Kräuterprinten, 250g, 2,50 EUR",
                          "No121b" => "No121 b Kräutermöppchen*, 250g, 3,05 EUR",
                                  "No122c" => "No122 c Prinzessprinten, 250g, 2,65 EUR",
                                  "No123d" => "No123 d Prinzessmöppchen*, 250g, 3,20 EUR",
                                  "No124e" => "No124 e Schokoprinten, 250g, 3,05 EUR",
                                  "No125f" => "No125 f weiche Schokomöppchen*, 250g, 3,70 EUR",
                                  "No126g" => "No126 g Nussmöppchen*, weich, 250g, 4,35 EUR",
                                  "No128"  => "No128 gemischte Möppchen* gefüllt mit b. d. g. f. h., 450g, 7,10 EUR",
                                  "No129"  => "No129 Printen Präsentpackung weiche Möppchen* mit f. g. h., 750g, 16,35 EUR",
                                  "No130"  => "No130 Printen Geschenkdose mit b. f. h. gefüllt, 750g, 15,15 EUR",
                                  "No131"  => "No131 Klarsicht Zellophanpackung gefüllt mit b. d. f. g. h. , 13,75 EUR",
                                  "No136"  => "No136 Kräuter Printen Platte, 2,00 EUR",
                                  "No137"  => "No137 Prinzess Printen Platte, 2,10 EUR",
                                  "No138"  => "No138 Schoko Printen Platte, 3,40 EUR",
                                  "No139"  => "No139 Schoko Nuss Printen Platte, 4,05 EUR",
                                  "No140"  => "No140 Mandel Platte, 3,15 EUR",
                                  "No141"  => "No141 Zimt Platte, 2,15 EUR" );

    $arrPralinen = array(    "No142"  => "No142 Monschauer Vennbrocken in Edelmarzipan, 100g, 3,75 EUR",
                                  "No143"  => "No143 Monschauer Vennbrocken in Cointreau Trüffel, 100g, 3,75 EUR",
                                  "No144"  => "No144 Monschauer Vennbrocken in der Präsentpackung in Marzipan, 200g, 8,15 EUR",
                                  "No145"  => "No145 Monschauer Vennbrocken in Cointreau Trüffel, 200g, 8,15 EUR",
                                  "No146"  => "No146 Feinste, frische Pralinen, 100g, 3,75 EUR",
                                  "No147"  => "No147 gemischte Trüffel Pralinen, 100g, 3,75 EUR" );

    $arrDiabetiker = array(    "No148"  => "No148 Pralinen für Diabetiker, 90g, 4,05 EUR",
                                  "No149"  => "No149 Diabetiker Teegebäck, 125g, 4,20 EUR",
                                  "No150"  => "No150 Diabetiker Lebkuchen, 150g, 3,70 EUR");

         $arrHolzkiste = array(    "No132"  => "No132 Holzpräsentkiste, gefüllt mit b. f., 500g, 10,50 EUR",
                                  "No133"  => "No133 Holzpräsentkiste gefüllt mit b. f. g., 750g, 15,10 EUR",
                                 "No134"  => "No134 Holzpräsentkiste gefüllt mit b. d. f. g., 1000g, 18,35 EUR",
                                  "No135"  => "No135 Holzpräsentkiste gefüllt mit b. d. f. g. h. e., 1500g, 26,90 EUR");

         $arrWeihnachtspräsent = array(    "No1"  => "No1 Feinster Butterstollen 900g, Printen Sortiment 450g, gemischte Trüffel 110g,Marzipan Zimtsterne, 150g, 32,95 EUR",
                                      "No2"  => "No2 Besten Butterstollen 600g, Pralinen Bonbonniere 250g, Printen Sortiment 450g,Orangen Makronen 200g, 36,45 EUR",
                                      "No3"  => "No3 Gemischte Printen 450g, Marzipan Zimtsterne 150g, Vanille Kipferl 200g, 19,05 EUR",
                                      "No4"  => "No4 Kräuter-, Prinzess-, Schoko-, Mandel-, Nuss-Möppchen* zu je 250g, 22,30 EUR",
                                      "No5"  => "No5 Stollen 600g, Nuss Pangani 200g, Pralinen 100g, Marzpian Zimtsterne 150g,gemischte Möppchen* 200g, 33,45 EUR" );

         $arrWeihnachtszeit = array(     "No151" => "No151 Butterstollen mit Marzipan, 900g, 13,60 EUR",
                              "No152" => "No152 Butterstollen mit Marzipan, 700g, 10,55 EUR",
                                      "No153" => "No153 Butterstollen mit Marzipan, 1500g, 22,40 EUR",
                                      "No154" => "No154 Marzipan Zimtsterne, 150g, 3,90 EUR",
                                      "No155" => "No155 Nuss Mandel Zimtsterne, 200g, 4,35 EUR",
                                      "No156" => "No156 Marzipan Kartoffeln, 100g, 2,30 EUR",
                                      "No157" => "No157 Saftige Orangen Makronen, 200g, 4,35 EUR",
                                      "No158" => "No158 Vanille Kipferl, 200g, 4,05 EUR",
                                      "No159" => "No159 Nuss Pangani, 200g, 4,05 EUR");

    $errMsg = '';
?>


<form action="bestellung.php" method="post">
   <div id="main">



   <div id="navigation">
         <a href="index.html">
         <img border="none" src="images/logo.gif" class="logo">
         </a>
         <ul>
         <li><a class="chronik" href="chronik.html">&nbsp;</a></li>
    <li><a class="spezialitaeten" href="spezialitaeten.html">&nbsp;</a></li>
         <li><a class="praesente" href="praesente.html">&nbsp;</a></li>
         <li><a class="busreisen" href="busreisen.html">&nbsp;</a></li>
         <li><a class="bestellung" href="bestellung.php">&nbsp;</a></li>
         </ul>

   </div>


   <div id="content">
      <form name="Bestellformular" method="post" action="<?php $PHP_SELF;?>">
    <div id="header_image">
        <p><img src="images/bestellung.gif"></p>
   </div>
        <p><img src="images/ornament.gif"></p>
        <p><span class="text_format5">Unser Angebot - Ihre Bestellung</span></p>
        <ul class="bestellung_form">
        <li>Mindestbestellwert: 16 EUR</li>
        <li>Mengenrabatt: ab 160 EUR Warenwert 5%, ab 520 EUR Warenwert 10%</li>
        <li>Rechnung zahlbar 14 Tage ohne Abzug. Preisliste gültig bis 1. 9. 2006</li>
        <li>Alle Preise zuzüglich Porto und Verpackungskosten. (Zahlung erfolgt per Rechnung.)</li>
        </ul>

         <p class="text_soLi">Hiermit bestelle ich folgende Artikel des Cafés Kaulard zur sofortigen Lieferung inkl. Porto
         (Auslandsbestellung auf Anfrage) und Verpackung:</p>

         <ul class="bestellung_form">
             <?php
                  foreach ($arrPrinten as $key=>$val){
                    if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
         <li><input type="text" value="<?php echo $strValue;?>" name="<?php echo $key;?>" size="2" maxlength="3"><?php echo $val;?></li>
    <?php
              }
        ?>
         </ul>

         <p><span class="text_format7">*(Möppchen= Bezeichnung für eine kleine Printe)</span></p>

         <p class="header_bestellung_format">Unsere taufrischen Pralinen Spezialitäten:</p>
         <ul class="bestellung_form">
             <?php
                  foreach ($arrPralinen as $key=>$val) {
                 if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
         <li><input type="text" value="<?php echo $strValue;?>" name="<?php echo $key;?>" size="2" maxlength="3"><?php echo $val;?></li>
         <?php
              }
        ?>
         </ul>

         <p class="header_bestellung_format">NEU - für Diabetiker:</p>
         <ul class="bestellung_form">
             <?php
                  foreach ($arrDiabetiker as $key=>$val) {
                 if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
         <li><input type="text" value="<?php echo $strValue;?>" name="<?php echo $key;?>" size="2" maxlength="3"><?php echo $val;?></li>
         <?php
              }
        ?>
         </ul>

         <p class="header_bestellung_format">Geschenk-Holzkisten:</p>
         <ul class="bestellung_form">
             <?php
                  foreach ($arrHolzkiste as $key=>$val) {
                 if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
         <li><input type="text" value="<?php echo $strValue;?>" name="<?php echo $key;?>" size="2" maxlength="3"><?php echo $val;?></li>
         <?php
              }
        ?>
         </ul>


         <p class="header_bestellung_format">Weihnachts-Geschenk-Packungen</p>
         <table class="bestellung_tabelle_weihnachtsgeschenk">
             <?php
              foreach ($arrWeihnachtspräsent as $key=>$val) {
                 if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
                 <tr>
        <td class="bestellung_weihnachtsgeschenk_form"><input type="text" value="0" name="<?php echo $key;?>" size="2" maxlength="3"></td>
                 <td class="bestellung_weihnachtsgeschenk_beschriftung"><?php echo $val;?></td>
                 </tr>
                          <?php
                      }
                 ?>
         </table>
         <p><span class="text_format7">*(Möppchen= Bezeichnung für eine kleine Printe)</span></p>

         <p class="header_bestellung_format">Zur Weihnachtszeit ab November:<br>
               <span class="text_bestellung_format">letzter Versandtag 20. Dezember</span></p>
         <ul class="bestellung_form">
             <?php
              foreach ($arrWeihnachtszeit as $key=>$val) {
                 if (intval($_REQUEST[$key]) > 0) $strValue = $_REQUEST[$key];
                else $strValue = '0';
                ?>
         <li><input type="text" value="<?php echo $strValue;?>" name="<?php echo $key;?>" size="2" maxlength="3"><?php echo $val;?></li>
         <?php
              }
        ?>
         </ul>
  <?php


?>


                  <table class="bestellung_tabelle">
              <tr>
                 <td class="bestellung_beschriftung">Vor- und Zuname: </td>
                 <td class="bestellung_eingabe"><input type="text" name="name" size="40"></td>
        </tr>

                 <tr>
                 <td class="bestellung_beschriftung">Straße, Hausnummer: </td>
                 <td class="bestellung_eingabe"><input type="text" name="strasse" size="40"></td>
        </tr>

                 <tr>
                 <td class="bestellung_beschriftung">Plz/Wohnort: </td>
                 <td class="bestellung_eingabe"><input type="text" name="ort" size="40"></td>
        </tr>

                 <tr>
                 <td class="bestellung_beschriftung">Telefon: </td>
                 <td class="bestellung_eingabe"><input type="text" name="telefon" size="24"></td>
        </tr>

             <tr>
                 <td class="bestellung_beschriftung">Ihr gewünschter Liefertermin: </td>
                 <td class="bestellung_eingabe"><input type="text" name="liefertermin" size="24"></td>
        </tr>

         </table>

         <p class="text_lieferadresse">Wünschen Sie die Lieferung an eine Geschenkadresse: </p>

                <table class="bestellung_tabelle">
              <tr>
                 <td class="bestellung_beschriftung">Vor- und Zuname: </td>
                 <td class="bestellung_eingabe"><input type="text" name="name" size="40"></td>
        </tr>

                 <tr>
                 <td class="bestellung_beschriftung">Straße, Hausnummer: </td>
                 <td class="bestellung_eingabe"><input type="text" name="strasse" size="40"></td>
        </tr>

                 <tr>
                 <td class="bestellung_beschriftung">Plz/Wohnort: </td>
                 <td class="bestellung_eingabe"><input type="text" name="ort" size="40"></td>
        </tr>

                 <tr>
                 <td></td>
                 </tr>

         </table>

         <p class="button_abschicken">
         <input type="hidden" name="send" value="true">

         <input class="button" type="submit" value="Abschicken" name="submitButtonName">
         </p>

            <p><img src="images/ornament_kl.gif"></p>

    </div>
</form>



</body>
</html>

So, die Aufgabe lautet nun wie folgt:

1.) hidden bleibt true
2.) formularfelder werden erst nach dem absenden überprüft
3.) wenn send true ist, und die formularfelder ok sind, dann zeig ich "Danke für die Bestellung..."
sind die formularfelder nicht ok, dann schreibe ich in eine Variable eine Fehlermeldung rein, die dann Unten im Formular angezeigt wird
das formular wird nur dann angezeigt, wenn send != true ist, oder die fehlermeldung gefüllt ist
und wenn das formular dann nochmal angezeigt wird, dann sollen die angaben (zb. bestellmengen, adresse, usw..), die bereits eingegeben worden, auch wieder voreingestellt sein, damit man nur noch das korrigieren muss, was fehlerhaft war
und bei nem fehler muss natürlich die fehlermeldung im formular angezeigt werden

Würde mich freuen wenn es hier User gibt die mir dabei helfen würden.

Grüße der Banni
 
Hi,

wie meinst du Helfen?
Sag doch einfach was genau nicht geht, falls etwas nicht funktioniert.
Und dann können "wir" dir evtl. helfen.

Gruss,
MArc
 
Bin ein absoluter Nap in PHP, nunja den Code den ich gepostet habe habe ich schon selbst gemacht, aber ich kenn mich in PHP nur so weit aus, das ich weiß wie es aufgebaut ist, vorhandenen Code umändern kann, ich weiß was ich geändert habe und ein paar funktionen kenne.

So und um ein wenig mich darin zu verbessern hab ich diese aufgabe bekommen...
Nur ich hab keine Ahnung wie ich anfangen soll...
 
Hi!

Eine "Auswertungsseite" erstellen, auf der du sämtliche Inhalte des Formulars überprüfst. Die Inhalte holst du dir mit $_POST, dann mit if und elseif arbeiten, sobald es da nichts zu beanstanden gibt kannst du die Bestätigung ausgeben...

Das alles zu schreiben ist mühselig und ich werde nen teufel tun und mit einem kleinen Teil anfangen - schließlich sollst du ja lernen ;)

Probier das erstmal mit den Infos, schreib so eine Überprüfung und wenn es dann noch Fehler gibt, sehen wir weiter.
 
Zurück