Partner & Ads


media-products.de Partner-Banner
scripthosting.net Partner-Banner

Codeschnipsel

Zurück zur Übersicht

Kontaktformular erstellen (Grundlagen)

Fragen oder Anmerkungen zum diesem Codeschnipsel?
Im zugehörigen Diskussionsthema im Support-Forum wird Ihnen weitergeholfen!

In diesem kurzen Tutorial wird ein kleines HTML-Formular erstellt um das Zusammenspiel zwischen HTML und PHP kennenzulernen. Wir beginnen dazu damit ein einfaches HTML-Formular mit mehreren Eingabefeldern anzulegen (das Formular kann beliebig erweitert werden):

<form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post"> 
    <input type="text" name="email" size="20" /> 
    <input type="text" name="nachricht" size="50" /> 
    <input type="hidden" name="send" value="ja" /> 
    <input type="reset" value="Reset" /><input type="submit" value="Versenden" /> 
</form>

Nun fehlt noch der PHP-Code um die übergebenen Formulardaten zu verarbeiten und anschließend mit der mail()-Funktion zu versenden. Allgemeine Informationen zum Zugriff auf Daten, die per Formular übertragen wurden, sind auch diesem kurzen Tutorial zu entnehmen.

<?PHP
if(isset($_POST['send']) && $_POST['send'] == "ja"){
    $absender = preg_replace( "/[^a-z0-9 !?:;,./_-=+@#$&*()]/im", "", 
    $_POST['email'] );

    $absender = preg_replace( "/(content-type:|bcc:|cc:|to:|from:)/im", "", 
    $absender );

    $txt = preg_replace( "/(content-type:|bcc:|cc:|to:|from:)/im", "", 
    $_POST['nachricht'] );

    mail("email@adresse.de","Betreff","Folgende Nachricht wurde per Kontaktformular an Sie versendet:nn".$txt."","From:".$absender."<".$absender.">");

    echo "<p align="center"><b>Ihre Nachricht wurde erfolgreich an den Webmaster verschickt!</b></p>";
    }
?>

Beachten Sie, dass die Variablen vor dem Versand mit der preg_replace()-Funktion behandelt werden um zu verhindern, dass ein falscher Absender der Funktion untergeschoben werden kann.
Zur Behandlung von externen Variablen ist auch folgende Seite sehr hilfreich.

Wenns Sie ihr Formular weiter oben mit weiteren Feldern erweitert haben, können Sie im Hauptteil der E-Mail die entsprechenden Werte über die entsprechenden Variablen einfügen.
Beim Zusammensetzen der Mailfunktion ist darauf zu achten, dass die E-Mail so formatiert wird, wie sie im Quellcode angezeigt wird. Es werden also alle Zeilenumbrüche und Leerzeichen aus dem Quellcode in der E-Mail übernommen.
Die Variablen setzen sich wie folgt zusammen (weitere Informationen):

<?PHP
echo $_TRANSFERMETHOD['feldname']; 
// Beispielsweise bei method="POST":
echo $_POST['feldname']; 
// oder bei method="GET ":
echo $_GET['feldname']; 
?>

Weiterführende Informationen

Zurück zur Übersicht

Zum Diskussionsthema
Download
Git

Dieser Beitrag ist unter der Creative Commons Namensnennung 3.0 Deutschland lizensiert.
Bearbeitung, Nutzung & Verbreitung ist ausdrücklich gestattet.