PHP-Einfach.de
  • PHP Tutorial
  • MySQL Tutorial
  • Für Fortgeschrittene
  • Webhosting
  • Jobs
  • Forum

E-Mails mit PHP versenden

10. Februar 2020
  1. Home
  2. »
  3. PHP Tutorial
  4. »
  5. E-Mails mit PHP versenden

Die E-Mail Funktion von PHP ist sehr praktisch, denn damit können wir Formulardaten versenden lassen oder ganze Newsletter-Scripts erstellen. Man kann dieses Verfahren auch für ein Gästebuch benutzen, z.B. das man eine Mail erhält, wenn sich jemand in das Gästebuch einträgt.

Wichtig
Wenn ihr diese Funktion auf eurem Computer ausführt, erhaltet ihr normalerweise eine Fehlermeldung:
Warning: mail():...

Dies kommt, weil euer lokaler Server keine E-Mails verschicken kann. Die Fehlermeldung könnt ihr ignorieren, denn auf dem echtem Server sollte sie eigentlich nicht mehr auftreten.

Mit der PHP-Funktion mail() könnt Ihr die Mails verschicken, der Befehl sieht so aus:

1
2
3
<?php
mail($empfaenger_email, $betreff, $nachricht, "From: Absender <[email protected]>");
?>

Es ist sinnvoll die einzelnen Texte in Variablen zu speichern, damit man die Übersicht behält.

So lassen sich aber nur Text E-Mails verschicken, HTML E-Mails sind etwas komplizierter (siehe unten).

Eine fertige PHP Mail Funktion würde so aussehen:

1
2
3
4
5
6
7
8
<?php
$empfaenger = "[email protected]";
$betreff = "Die Mail-Funktion";
$from = "From: Vorname Nachname <[email protected]>";
$text = "Hier lernt Ihr, wie man mit PHP Mails verschickt";
 
mail($empfaenger, $betreff, $text, $from);
?>

So wird eine Mail von [email protected] an [email protected] verschickt.

Wenn euer Server richtig eingestellt ist, sollte die E-Mail sofort ankommen.

Natürlich könnt Ihr die Texte auch von einem Formular abfragen.

Die Mail wird so verschickt wie es im Quelltext des Scripts steht. Wenn Ihr z.B. ein ü durch &uuml; (HTML Code für ein ü) ersetzen lasst, so steht es später in der Mail: &uuml;. Denn dort werden dann nicht die Umlaute angezeigt, sondern der HTML-Code dafür (bei Text Emails).

Außerdem dürft Ihr keine HTML-Befehle benutzen, wenn z.B. in der E-Mail steht, so wird das nicht in einen Zeilenumbruch verwandelt, sondern in der Mail steht dann .

Für Zeilenumbrüche reicht ein einfaches Enter im Quelltext bzw. ein \n. Um etwas Einzurücken, müsst ihr Tab bzw. Space benutzen.

HTML-Emails

Man kann mit PHP auch HTML-Emails verschicken. Aber ihr solltet wissen, das nicht alle E-Mail Programme und E-Mail Anbieter diese HTML-Emails richtig anzeigen. Ebenfalls zeigen nicht alle E-Mail Programme und Anbieter auch alle HTML-Befehle an, viele Anbieter lassen nur ganz gewisse Befehle zu um ihre Besucher vor schadhaften E-Mails zu schützen.

Damit PHP HTML-Emails verschicken kann, müsst ihr die $from Variable etwas verändern.

1
2
3
4
5
6
7
8
9
10
11
<?php
$empfaenger = "[email protected]";
$betreff = "Die Mail-Funktion";
$from = "From: Vorname Nachname <[email protected]>\r\n";
$from .= "Reply-To: [email protected]\r\n";
$from .= "Content-Type: text/html\r\n";
$text = "Hier lernt Ihr, wie man mit <b>PHP</b> Mails
verschickt";
 
mail($empfaenger, $betreff, $text, $from);
?>

Die Variable $from wird einfach ergänzt, aber achtet darauf, das nach dem Absender noch ein \r\n stehen muss.

Außerdem haben wir noch eine Reply (Antwort) Adresse angegeben.

Bei dem Text müssen wir aufpassen, dass wir die Anführungszeichen " durch ein Backslash (\) maskieren müssen.

Beispiel 2:

1
2
3
<?php
$text = "Hier lernt Ihr, wie man mit <strong>PHP</strong> Mails verschickt";
?>

Der Text der Nachricht muss in dem Fall mittels HTML formatiert werden! Hier reicht für ein Zeilenumbruch kein Enter mehr, sondern man muss <br /> benutzen.

Autor: Nils Reimers
Zurück: Datum und Uhrzeit
Weiter: Suchen und Ersetzen

PHP Tutorial

  • Installation
  • Webspace
  • Erste Schritte
  • Text ausgeben per echo
  • Kommentare
  • Variablen
  • Rechnen mit Variablen
  • $_GET und $_POST
  • if-Anweisungen
  • Vergleichsoperatoren
  • Logische Operatoren
  • Übungsaufgaben
  • while-Schleife
  • for-Schleife
  • Arrays
  • Dateien lesen
  • Dateien schreiben
  • Datum und Uhrzeit
  • E-Mails mit PHP versenden
  • Suchen und Ersetzen
  • Sessions
  • Eigene Funktionen
  • Andere PHP Dateien einbinden
  • Dateiupload
  • Cookies
  • Konstanten
  • Reguläre Ausdrücke
  • Überblick: Wichtige PHP Funktionen
Mit freundlicher Unterstützung von:
  • Punkt191 Werbeagentur
  • Casinopilot24.com
  • Casino utan Spelpaus
  • Casino utan Spelpaus med Trustly
  • Neueonline-Casinos.com
  • CasinoHEX.at
  • Decasinos.de
  • Privatkredit247.com
  • CasinoAdvisers.com
  • parhaatuudetkasinot.com
  • Online Casino Spielautomaten

Hoster – Geringste Ausfallzeit

  1. webgo Ø 1 Min.
  2. netcup Ø 5 Min.
  3. Linevast Ø 7 Min.
  4. Mittwald Ø 13 Min.
  5. manitu Ø 14 Min.
  6. dogado Ø 14 Min.
  7. All-Inkl.com Ø 20 Min.
  8. Host Europe Ø 21 Min.
  9. bplaced Ø 22 Min.
  10. Strato Ø 25 Min.
» Mehr erfahren

Impressum | Datenschutz | Auf PHP-Einfach.de werben

© PHP-Einfach.de 2003 - 2021

Um dich beim Lernen von PHP und MySQL zu unterstützen verwenden wir Cookies. OK Weitere Infos
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Notwendige
immer aktiv

Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.

Nicht notwendige

Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.