Loading…

Mein neuer 15 Stunden Android 7 Kurs

Lern Android 7 und Google Firebase
jetzt Loslegen
Symbolbild: Digitale Menschen

PHP E-Mail senden

PHP Mails werden entweder mit der PHP eigenen Mail-Funktion gesendet oder mit einer komplexen Klasse. Die PHP eigene Mail-Funktion ist für viele einfache Standards gut genug. Möchte man mehr, muss man auf eine Klasse oder ein Framework zurückgreifen. Hier erkläre ich die einfache Funktion.

Um mit PHP eine E-Mail zu senden, gibt es eine einfache Funktion. Die

Funktion sendet eine E-Mail an eine Zieladresse. Der Aufruf der mail() Funktion ist sehr einfach, man muss allerdings der Funktion die E-Mail exakt übergeben. Die Variablen im 1. Listing zeigen eine kleine e-Mail. Ich gehe alle Variablen nun ausführlich durch. Die Funktion

erwartet die Informationen in dieser Reihenfolge.

Enthält einfach nur die Adresse des Empfängers.

Hier wird der Betreff der E-Mail übergeben.

Hier wird es etwas schwieriger. Eine E-Mail ist nach einer exakten Syntax aufgebaut. Das heißt, man muss dem Mailserver und dem Mailprogramm genau die Informationen liefern die es will. Besonders wichtig sind dabei die Zeilenumbrüche.
Diese werden im String mit \n gemacht. Ansonsten entsteht ein nicht mehr lesbarer String. Als erstes wird ein String mit dem Absender generiert.

Darauf folgt ein Zeilenumbruch, die Antwortadresse und dann der Type der E-Mail. In diesem Beispiel ist das eine HTML E-Mail. Die Variable from wird  immer weiter verlängert. mit .= wird der nächste String an die Variable angehängt. Das macht den Code übersichtlicher.

Nun könnte die E-Mail gesendet werden.
Ich möchte vorher aber noch kurz auf etwas anderes eingehen.
Normalerweise möchten wir sicher nicht für jeden Benutzer eine eigene Benachrichtungsfunktion schreiben. Die Adresse und der Mailtext kommen vielleicht aus einer Datenbank, wie bei der Benachrichtigung in einem Gästebuch oder einem Kontaktformular.
Nun möchte ich alle Informationen durch Variablen ersetzen, damit der Code auch dynamisch genutzt werden kann. Schaut euch das Listing genau an, es ist eigentlich selbsterklärend und funktionsfähig.

Als letztes muss die E-Mail nur noch abgesendet werden. Das ist sehr leicht.

Die E-Mail wurde NICHT mit SMTP versendet, sondern mit der PHP eigenen Mail-Funktion!