Mail aus Form zusammensetzen

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

  • Mail aus Form zusammensetzen

    Hallo Wissende,

    bisher habe ich den Inhalt meiner Mail aus dem Kontaktformular so zusammengestellt:

    PHP-Code:
        $hidden_fields = array('next''url','copy','email','typ_sender','sender');
        foreach (
    $https as $key => $value)
        {
            if (! 
    in_array($key$hidden_fields))
                
    $text $text."".$key." : ".stripslashes($value)."\n\n";
        } 
    Ist sicher nicht so schön, aber so habe ich es damals gelernt.

    Nun habe ich das Problem, dass ich ein Bestellformular erstellen soll, welches natürlich dann ein der Mail etwas formatierter sein soll.

    Das Formular sieht ungefähr so aus:

    <h2>Beispiel für ein Bestellformular</h2>
    <table width="450px">
    <tr>
    <th>Bezeichnung</font></th>
    <th>Anzahl</font></th>
    <th>Stückpreis (€)</font></th>
    <th>Gesamt</th>
    </tr>
    <tr>
    <td><input class="order" type="text" name="pro1" size="3" value="kleines Eis" onChange="changed(this);" readonly="readonly"></td>
    <td><input class="order" type="text" name="anz1" size="3" value="0" onChange="changed(this);"></td>
    <td><input class="order" type="text" name="ein1" size="7" value="1.45" onChange="changed(this);" readonly="readonly"></td>
    <td><input class="prize" type="text" name="ges1" size="7" value="0.00 €" onChange="changed(this);" readonly="readonly"></td>
    </tr>
    <tr>
    <td><input class="order" type="text" name="pro2" size="3" value="grosses Eis" onChange="changed(this);" readonly="readonly"></td>
    <td><input class="order" type="text" name="anz2" size="3" value="0" onChange="changed(this);"></td>
    <td><input class="order" type="text" name="ein2" size="7" value="2.99" onChange="changed(this);" readonly="readonly"></td>
    <td><input class="prize" type="text" name="ges2" size="7" value="0.00 €" onChange="changed(this);" readonly="readonly"></td>
    </tr>
    <tr>
    <th colspan="3" align="right">Gesamtsumme:&nbsp;</th>
    <td><input class="hole_prize" type="text" name="total" size="7" onChange="changed(this);" readonly="readonly"></td>
    </tr>
    </table>
    <br />
    <table width="450px">
    <tr>
    <td class="text" width="50%"><label>Email-Adresse:</label></td><td><input class="persona" type="text" name="SenderMail" size="75"></td>
    </tr>
    <tr>
    <td class="text"><label>Ihr Name:</label></td><td><input class="persona" type="text" name="Name" size="75"></td>
    </tr>
    <tr height="50">
    <td colspan="2"><input type="submit" value="Bestellen"><input type="reset" value="Zurücksetzen"></td>
    </tr>
    </table>
    </form>

    Ich hätte nun gern in der aus dem Formular resultierenden Mail ein Struktur ala:

    Folgendes wurde bestellt:

    2 x kleines Eis (a 1,45 Euro) Preis : 2,90 Euro
    1 x grosses Eis (a 2,99 Euro) Preis : 2,99 Euro

    So setzt sich das ungefähr zusammen. Das steht für den ProduktCount. Ich weiss eben einfach nicht, wie man da vorgehen sollte, um das ordentlich und sauber zu lösen.

    {anz[i] x pro[i] (a ein[i]) Preise : ges[i] Euro}

    gesamt 3 Produkte zum Preis von 5,98 Euro...

    Wie kann ich dieses Zusammenstellen des MailInhaltes realisieren?
    Zuletzt geändert von torud; 19.06.2006, 17:01.
    Danke
    Tom

  • #2
    weiß ja nicht wie dein formular aufgebaut ist, aber nimm dir doch noch eine zusätzliche Variable mit der Anzahl an Artikeln zu hilfe.

    In der for(i$<$anzahl) schleife kannst dann dein

    {anz[i] x pro[i] (a ein[i]) Preise : ges[i] Euro}

    umsetzen.

    PS:

    $text = $text . $nochwas . "blabla";

    geht eleganter so:

    $text .= $nochwas . "blabla";

    lg, dani

    Kommentar


    • #3
      Hi Dani,

      ich vermute mal, dass Du meinst, dass ich in dem Formular noch ein verstecktes Feld mit übergeben soll in der dann die Anzahl der Produkte steht?

      Daran hatte ich auch schon gedacht...mir nur gerade nicht mehr ein, warum ich es noch nicht damit probiert habe...

      Falls Du was anderes meinst, wäre es lieb, wenn Du mir noch nen Tipp gibst, wie ich ansonsten an die Anzahl der Produkte komme...
      Danke
      Tom

      Kommentar


      • #4
        PHP-Code:
        //nicht getestet
        $i=1;
        $stuck=0;
        $gesamt=0;
        while(isset(
        $_POST["pro".$i])){
          if(
        $_POST["anz".$i]!=0){
             
        $stuck++;
             
        $wert=$_POST["anz".$i]*$_POST["ein".$i];
             
        $gesamt+=$wert;
             echo 
        $_POST["anz".$i]." x  ".$_POST["pro".$i].
             
        " (a ".$_POST["ein".$i]." ) Preise : ".$wert." Euro <br />";
             
        $wert=0$i++;
             }
        }
        echo 
        "Sie haben $stuck produkten in Gesamtwert $gesamt Euro gekauft"
        Slava
        bituniverse.com

        Kommentar


        • #5
          Hallo Slava,

          ich werde es mal probieren, habe aber noch nicht ganz verstanden, warum du

          PHP-Code:
          $i=1
          initialisierst...?

          Habe es nun getestet und es funktioniert einwandfrei. Ich muss nichtmal einen ProduktCount übergeben. Alles Super!

          balschoi Spasiwo
          Towarisch

          {habe leider keine kyrillischen Buchstaben auf meiner Tastatur}
          Zuletzt geändert von torud; 20.06.2006, 05:44.
          Danke
          Tom

          Kommentar


          • #6
            Original geschrieben von torud
            {habe leider keine kyrillischen Buchstaben auf meiner Tastatur}
            wenn ich das wuste, dann würde ich dir natürlich in keinem Fall die Code senden.
            und $i=1, weil aus deinem formular habe ich bemerkt, dass die variablen mit $variablename."1" beginnen.
            es ist auch egal ob es einwandfrei funktioniert, hauptsache du hast vorgehensweise verstanden.
            Slava
            bituniverse.com

            Kommentar


            • #7
              сижу здесь с умным видом
              и ничего не понимаю

              Ich sitze hier mit der gescheiten Form und ich verstehe nichts

              Kommentar


              • #8
                Original geschrieben von PHP-Desaster

                Ich sitze hier mit der gescheiten Form und ich verstehe nichts
                so eine übersetzung bekommt man, wenn man babelfish benutzt.
                passende deutschübersetzung wäre:
                ich sitze hier mit schlauen Gesichtsausdruck, und verstehe nichts.
                Slava
                bituniverse.com

                Kommentar

                Lädt...
                X