PHP Quelltext

Tutorial (PHP): Wie mache ich ein Kontaktformular mit E-Mail-Versand?

In diesem Tutorial wirst Du lernen, wie man ein Kontaktformular ganz einfach mit PHP erstellen kann. Außerdem hast Du die Möglichkeit den Quellcode einfach herunterzuladen.

kontakt.html

Zunächst einmal benötigen wir die HTML-Datei. Wir erstellen eine einfache Form mit Vorname, Nachname, E-Mail und der Nachricht. Das Attribut „name“ wird später benötigt, damit wir anhand des arrays „$_POST“ die Daten aus dem Formular auslesen können. Diese werden an die auszuführende PHP-Datei übergeben. Der Name, der eben gennanten Datei (in unserem Fall kontakt.php), wird unterdem Attribut „action“ in dem „form-Tag“ eingetragen. Durch das betätigen des „Submit“-Buttons wird der PHP-Skript ausgeführt. Damit der Browser weis, dass er die Informationen an den Server schicken soll, muss noch das zusätzliche Attribut „method“ mit „post“ in den Anfangs Form-Tag.


<form action="kontakt.php" method="post"><label for="vorname">Vorname:</label>
 <input id="vorname" type="text" name="vorname" />

 <label for="nachname">Nachname:</label>
 <input id="nachname" type="text" name="nachname" />

 <label for="email">Ihre E-Mail-Adresse:</label>
 <input id="email" type="text" name="email" />

 <label id="betreff" for="betreff">Betreff:</label>
 <input id="betreff" type="text" name="betreff" />

 <label for="nachricht">Ihre Nachricht:</label>
 <textarea id="nachricht" name="nachricht"></textarea>

 <input id="submit" type="submit" name="submit" value="Abschicken" />

kontakt.php

Zur Erinnerung: kontakt.php wird ausgeführt, wenn der Benutzer den „Submit-Button“ betätigt hat. Alle Daten sind nun in dem Array „$_POST“ gespeichert. Durch das genauere definieren mit den „name“-Tags kann man nun die einzelnen Bausteine in Variablen speichern und letztendlich ausgeben.

Daraufhin benötigt das Skript noch eine E-Mail Adresse, an die die Informationen gesendet werden sollen. In diesem Fall ist dies Deine Adresse. Dazu legen wir noch einen Betreff an und speichern ihn ebenfalls in einer Variablen.

Nun legen wir eine Bedingung fest mithilfe von if-else. Wenn die Bedingung in den () Klammern hinter dem if den Wert true ausgibt, wird der daurauf folgende Code ausgeführt. Wir überprüfen mit !empty, ob die Variablen leer sind. Die Bedingung bedeutet: Wenn $variable und $variable und…nicht leer, dann versenden. In unserem Fall wird dort mit der Mailfunktion eine E-Mail versandt und eine Bestätigung ausgegeben.
Falls false ausgeliefert wird, wird nur der Code in dem else-Teil ausgeführt. In else geben wir eine einfache Fehlermeldung aus.

<?php
/* === Daten aus dem Formular auslesen und in Variablen speichern === */
  $vorname = $_POST&#91;'vorname'&#93;;
  $nachname = $_POST&#91;'nachname'&#93;;
  $email = $_POST&#91;'email'&#93;;
  $betreff = $_POST&#91;'betreff'&#93;;
  $nachricht = $_POST&#91;'nachricht'&#93;;

  $name = $vorname.' '.$nachname; 

/* === Empfängeradresse und Betreff === */
  $an = 'beispiel@test.com'; //Hier Ihre E-Mail-Adresse eintragen
  $betreff = "Kontaktformularnachricht | $betreff | $name ";

/* === Wenn Bedingung erfüllt, dann E-Mail abschicken - andernfalls Fehlermeldung ausgeben === */
    if ((!empty($name))&&(!empty($email))&&(!empty($betreff))&&(!empty($nachricht))) {

      mail($an, $betreff, $nachricht, 'From:' . $email); //Mail versenden

      echo 'Ihre Kontaktnachricht wurde zugestellt. Sie werden bald möglichst eine Antwort erhalten.';
	}
	else {
	  echo 'Sie müssen alle Felder ausfüllen. <a href="kontakt.html">Zurück</a>';
	}
?>

Schritt 1: Formular ausfüllen und abschicken


Abbild des Kontaktformular

Schritt 2: Bestätigungs- oder Fehlermeldung ausgeben

Wenn wir nun alles richtig gemacht haben sollte eine Bestätigungs- bzw. eine Fehlermeldung kommen.


Bestätigungsmeldung des Programms
Fehlermeldung des Programms

Schritt 3: Empfangen der E-Mail

Wenn keine Fehlermeldung ausgegeben wurde, wird die E-Mail an die angegeben Adresse gesendet.
Zum Beispiel bei GoogleMail:


Empfangene E-Mail

Herunterladen:

Datei herunterladen

Über den Autor:

Mein Name ist Fabian Geier, Gründer von SourceBlogging, Läufer und WordPress-Enthusiast. Du findest mich vor allen Dingen auf meiner Webseite.