www.PHP-Kurs.com

PHP lernen für Einsteiger
und Fortgeschrittene

PHP-Tutorial mit Videos

Sie befinden sich: Startseite » PHP für Fortgeschrittene » E-Mails mit PHP erstellen

E-Mails mit PHP erstellen: mail() und Umlauten (äöüß)

Die Funktion mail unter PHP erwartet verschiedene Übergabewerte. Diese werden der Funktion mail in der Klammer übergeben (hier über Variablen).

Folgende Werte werden erwartet:

  • Empfänger-E-Mail-Adresse: in der Regel Ihre eigene
  • Absender-E-Mail-Adresse: von wem wird diese E-Mail abgesendet
  • Betreff: Alles, was in der Betreffzeile erscheinen soll
  • Mailtext: der eigentliche Inhalt der E-Mail
  • antwortan: an wen ein Replay erfolgen soll (oft identisch mit Empfänger)

Erstellen Sie folgendes Programm, wobei Sie als Empfänger Ihre eigene E-Mail-Adresse eintippen. Führen Sie das Programm aus und schauen Sie in Ihrem E-Mail-Programm nach, ob die E-Mail angekommen ist. In der Regel sollte diese 1-2 Minuten später bei Ihnen eintreffen.

PHP-Quellcode: E-Mail per PHP versenden
<?php
$empfaenger = "empfaenger@example.com"; // Mailadresse
$absender   = "absender@example.com";
$betreff    = "PHP-Mail-Test";
$mailtext   = "Inhalt einer Mail zum Test von PHP";
$antwortan  = "antworten_an@example.com";

mail( $empfaenger,
      $betreff,
      $mailtext,
      "From: $absender\nReply-To: $antwortan");

echo "Mail wurde gesendet!";
?>
Feedback zum E-Mail versenden über PHP

Mail wurde gesendet!

Umlaute (deutsche Sonderzeichen) korrekt in E-Mails – öäüß mailen anstatt killen

Bei E-Mails ist das Verschwinden der deutschen Sonderzeichen ein beliebtes Problem. Die Umlaute machen sich da gerne aus dem Staub, wenn man diese nicht über den Header-Bereich extra einlädt.

Für eine Textnachricht werden folgenden Angaben benötigt:

Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Allerdings sollte im Header-Bereich die Trennung der Zeilen korrekt über „\r\n“ erfolgen, sonst kommen Probleme auf einen zu.

Jetzt kann man sich natürlich Variblen-Ungetüme bauen in der Form von:

$header .= "Mime-Version: 1.0\r\n";
$header .= "Content-type: text/plain; charset=utf-8";

Da fehlt noch einiges an Angaben. Schöner ist es, über ein Array, das am Ende verbunden wird und dort dann die benötigte Trennung in Form von „\r\n“ eingebaut wird.

PHP-Quellcode: E-Mail mit deutschen Sonderzeichen öäüß über PHP versenden
<?php
$empfaenger = "empfaenger@example.com"; // Mailadresse Empfaenger
$betreff    = "PHP-Mail-Test mit Umlauten";
$mailtext   = "Inhalt einer Mail zum Test von PHP ";
$mailtext   .= "mit den deutschen Sonderzeichen öäüß";
$absender   = "Ich Hier <absender@example.com>";

$headers   = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/plain; charset=utf-8";
$headers[] = "From: {$absender}";
// falls Bcc benötigt wird
$headers[] = "Bcc: Der Da <mitleser@example.com>";
$headers[] = "Reply-To: {$absender}";
$headers[] = "Subject: {$betreff}";
$headers[] = "X-Mailer: PHP/".phpversion();

mail($empfaenger, $betreff, $mailtext,implode("\r\n",$headers));

echo "E-Mail mit Umlauten wurde gesendet!";
?>

Wenn Sie einen Fehler finden, bitte mitteilen (egal ob Schreibfehler oder inhaltlicher Fehler).

Mit Maus fehlerhafte Stelle markieren und übernehmen mit folgendem Button:



(kann angegeben werden)

Nach Absenden kommt hier Feedback! Bitte nicht doppelt absenden. Danke.

Bitte unterstützen Sie dieses Projekt

Sie können dieses Projekt in verschiedenen Formen unterstützen - wir würden uns freuen und es würde uns für weitere Inhalte motivieren :).

unsere Videos bestellen

Unsere Videos und eBooks bestellen.

Spenden

Sie können uns eine Spende über PayPal zukommen lassen.

Weiterempfehlungen

Empfehlen Sie es weiter - wir freuen uns immer über Links und Facebook-Empfehlungen.

Bücher über Amazon

Bestellen Sie Bücher über folgende Links bei Amazon:

Fehler melden

Vielen Dank für Ihre Hilfe