Variablen im Mailformular

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

  • Variablen im Mailformular

    Hallo Leute,

    ich habe das Folgende Problem:

    In der ersten Datei gibt der User einige Werte ein:


    PHP-Code:

    <?php
    <html>
        <
    meta http-equiv="content-type" content="text/html;charset=utf-8">


    <
    body>
            
    Bitte treffen Sie Ihre Werte ein:<br>
            <
    br>
            <
    br>
    <
    form action="ausgabe_1.php" method="post">
            <
    table width="428" border="0" cellspacing="0" cellpadding="0">
                    <
    tr>
                        <
    td width="60"></td>
                        <
    td width="140">Plattenl&auml;nge:</td>
                        <
    td width="25"></td>
                        <
    td><input style="width: 30px" type="text" name="plattenl_1" size="10" maxlength="3"cm</td>
                        <
    td></td>
                    </
    tr>
                    <
    tr>
                        <
    td width="60"></td>
                        <
    td width="140">Plattentiefe:</td>
                        <
    td width="25"></td>
                        <
    td><input style="width: 30px" type="text" name="plattent_1" size="10" maxlength="3"cm</td>
                        <
    td></td>
                    </
    tr>

                </
    table>
                <
    br>
                <
    table border="0" cellspacing="0" cellpadding="0">
                    <
    tr>
                        <
    td align="left" valign="top" width="60"></td>
                        <
    td align="left" valign="top" width="150"><input style="width: 120px" type="submit" name="Abschicken" value="Preis berechnen"></td>
                        <
    td align="left" valign="top" width="20"></td>
                        <
    td align="left" valign="top" width="150"><input style="width: 120px" type="reset" value="L&ouml;schen"></td>
                    </
    tr>
                </
    table>
                <
    p></p>
            </
    form>
        </
    body>

    </
    html>
    ?>
    Nun werden die Daten mit "post" an eine zweite Datei übergeben und hier wird eine kleine Rechnung ausgeführt und anschließend hat der User die Möglichkeit seine Daten einzugeben und zu versenden:



    PHP-Code:
    <html>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">

    <body>
    <form action="anfrage.php" method="post">
        <?php
        error_reporting
    (E_ALL);

        
    /* ´Berechnung */
        
    $preis $plattenl_1 $plattent_1 0.5 ;
        echo 
    "$preis";

        
    ?>
    </table>

    <table >
            <tr>
            <td width="93">Vorname:</td>
            <td width="100"><input type="text" name="vorname" size="24" /></td>
            </tr>
            <tr>
            <td width="93">Nachname:</td>
            <td width="100"><input type="text" name="name" size="24" /></td>
            </tr>

    <table border="0" cellspacing="0" cellpadding="0">
                            <tr>
                                <td align="left" valign="top" width="20"></td>
                                <td align="left" valign="top" width="150"><input style="width: 100px" type="reset"  value="L&ouml;schen"></td>
                                <td align="left" valign="top" width="20"></td>
                                <td align="left" valign="top" width="150"><input style="width: 150px" type="submit" value="Bestellung versenden"></td>
                            </tr>
                </table>
                <p></p>
            </form>


    </body>
    </html>
    Mit dieser Datei werden die Daten an eine Mailadresse gesendet:


    PHP-Code:

    <?php
    error_reporting
    (E_ALL);

    $plattenl_1    $_POST['plattenl_1'];
    $plattent_1    $_POST['plattent_1'];
    $preis $_POST['preis'];
    $vorname $_POST['vorname'];
    $name $_POST['name'];

    $to  "user@mail.de";

    $subject "Anfrage";

    $mailheaders  "FROM: $name \n";
    $mailheaders .= "X-Mailer: PHP\n";
    /* zusätzliche Headers */
    $mailheaders .= "To: User 123 \r\n";
    $mailheaders .= "Cc: \r\n";
    $mailheaders .= "Bcc: \r\n";

    $msg_body "Plattengr&ouml;sse";
    $msg_body .= "Länge Platte 1:  $plattenl_1\n";
    $msg_body .= "Tiefe Platte 1: $plattent_1\n";
    $msg_body .= "Plattenpreis: $preis\n";
    $msg_body .= "\n";
    $msg_body .= "Vorname:  $vorname\n";
    $msg_body .= "\n";
    $msg_body .= "Name:  $name\n";

    mail($to$subject$msg_body$mailheaders);
    echo 
    "Danke für Ihre Anfrage"

    ?>
    Nun das Problem: es werden die beiden Variablen mit der Länge und Breite aus der ersten Datei nicht gesendet und der Preis aus der zweiten datei obwohl ich es doch mit "post" weiterleite ??!! - bzw. ich bekomme immer die Meldung:

    Notice: Undefined index: plattenl_1 in test/anfrage.php on line 4

    Notice: Undefined index: plattent_1 in test/anfrage.php on line 5

    Notice: Undefined index: preis in test/anfrage.php on line 6

    Leider komme ich nicht weiter. Habe schon gegoogelt und das forum zwei mal durchsucht !
    Es ist sicherlich nur eine Kleinigkeit aber ich weiss leider nicht weiter.

    Danke für eure Hilfe

  • #2
    Re: Variablen im Mailformular

    Original geschrieben von Dino113
    Nun das Problem: es werden die beiden Variablen mit der Länge und Breite aus der ersten Datei nicht gesendet und der Preis aus der zweiten datei obwohl ich es doch mit "post" weiterleite ??!!
    1. in der zweiten datei musst du über $_POST auf länge und breite zugreifen, so, wie du es in der dritten datei gemacht hast.

    2. wie soll preis, länge, breite von dem zweiten formular in die dritte datei gelangen? ich sehe nirgends, dass du diese werte übergibst (nur name und vorname) - könntest du z.b. mit einem hiddenfield machen.

    Kommentar


    • #3
      @ 3DMax .. Danke für die schnelle hilfe.

      Auf dem Server sin die register_globals auf on ist deshalb mit dem $_POST nicht ganz so tragisch.

      Eine Frage zu deinem Vorschlag: kann ich die Variablen in die value eines Feldes eintragen z.B. value="$plattenl_1" ???

      gruß Dino
      Zuletzt geändert von Dino113; 29.11.2006, 15:31.

      Kommentar


      • #4
        Original geschrieben von Dino113
        Eine Frage zu deinem Vorschlag: kann ich die Variablen in die value eines Feldes eintragen z.B. value="$plattenl_1" ???
        das solltest du so machen
        und parameter bitte vorher prüfen. htmlentities davor anzuwendenkann auch nie schaden.

        Kommentar

        Lädt...
        X