Bestellformular

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bestellformular

    Hallo zusammen ich brauche Hilfe bei einem Bestellformular von mir das ich geschrieben habe.

    Um kurz zu erklären...alle Daten sollen in einer Datenbank gespeichert werden und bevor dieses geschieht richtig ausgrechnet werden.

    ---

    Ein User geht auf dieses Bestell Formular und bekommt die typsichen Felder "Name" etc. weiter unten gibt es dan die Artikel (zur zeit so wenig das man sie ruhig auflisten kann) die aus einer Datenbank ruas hinzugefügt werden (siehe code)

    PHP-Code:
    $i 0;
                  while (
    $l mysql_fetch_assoc($erg_id))
                  {
                    echo 
    "<tr>";
                    foreach (
    $l as $var)
                    {
                      echo 
    "<td width='200' valign='middle'><font size='2'><input value='$var' type='hidden' name='id$i'></input>";
                    }
                    
    $m mysql_fetch_assoc($erg_bez);
                    foreach (
    $m as $var2)
                    {
                      echo 
    "$var2<input name='artikel_bez$i' type='hidden' value='$var2'></input></td><td><input name='menge$i' size='2' type='Text'></input>&nbsp;<font size='1'>Stück</font></td>";
                    }
                    echo 
    "</tr>";
                    
    $i++;
                  } 
    Hinter jedem Artikel gibt es ein weiteres eingabe Feld für die Mengen Anzahl die der User haben will. Klickt er auf Senden werden alle Felder überrpüft und er User gelangt auf eine Art "Bestätigungs-Seite" wo er sich nocheinmal seine Eingaben anschauen kann und alle Artikel die er ausgewählt hat aufgelistet bekommt und wie teuer der ganze spass wird.
    Nur hab ich gerade dort ein Problem. Da ich den Artikel mit einer Schleife einzelen Feldnamen gebe (wie zB: $menge1, $menge2..) weiss ich ja nicht welche er nimmt. So habe ich eine foreach schleife gebaut (siehe code)

    PHP-Code:
    <?php
    foreach($_POST as $schluessel => $wert)
      {
        if(
    strpos($schluessel,"menge")===0)
          {
            echo 
    $wert;
          }
      }
    ?>
    Das selbe gilt auch für die Artikel IDs. Wie schaff ich es nun die Mengen zahlen heraus zu filtern, damit ich die späöter zusammen Rechnen kann. Genau wie bei den IDs nachher wie schaff ich es das ich damit nachher die Artikel Bezeichnung bekomme?

    Hoffe es klingt alles net zu verwirrend...weil ich hab überhaupt kein Idee mehr wie ich das machen soll.

    Gruß prophet`

    ps: bin noch relativer anfänger in php :/

  • #2
    Re: Bestellformular

    Original geschrieben von prophet`
    Da ich den Artikel mit einer Schleife einzelen Feldnamen gebe (wie zB: $menge1, $menge2..) [...]

    if(strpos($schluessel,"menge")===0)
    das halte ich für keine gute vorgehensweise.

    warum probierst du es nicht mit der array-schreibweise, in dem du den feldern einfach namen in der form name="feldxy[]" gibst?

    dann dürfte die anschliessende verarbeitung um einiges einfacher sein.

    probier's mal aus, und schau dir dann mit print_r($_POST) an, wie die daten übergeben werden.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      danke für die schnelle hilfe

      PHP-Code:
       [menge] => Array ( [0] => 11 [1] => 22 [2] => 33 
      das kommt dabei raus wenn ich es so mache. im enteffekt brauch ich jetzt nur eine schleife machen die einfach $menge[$i] liest oder? also die zahl in den [] hochzählt?

      Kommentar


      • #4
        so ich denke so sollte das hinhauen, oder jemand dagegen? ^^

        PHP-Code:
         <?php
          
        for ($i 0$i <= count($menge) -1$i++) {
            echo 
        "$menge[$i]"."<br>";
          }

        ?>

        Kommentar

        Lädt...
        X