Funktion: mail()
Diese Funktion benötigt mindestens drei Angaben in vorgegebener Reihenfolge:
1. Empfänger
2. Betreff
3. Mitteilung
1. Empfänger:
Das Format dieses String muss nach RFC 2822 erfolgen. Beispiele:
benutzer@example.com
benutzer@example.com, benutzer2@example.com
Name
Name , Name2
2. Betreff
Der Betreff darf keine Zeilenumbrüche enthalten, da sonst die E-Mail nicht korrekt gesendet werden kann.
3. Mitteilung
Jede Zeile muss durch ein LF-Zeichen (\n) getrennt werden. Außerdem sollten die Zeilen nicht mehr als 70 Zeichen enthalten.
Jetzt kann diese Funktion angewendet werden als:
<?php
mail("beispiel@domain.de", "Hier der Betreff", "Dies ist eine Mitteilung.\nSchön das Sie die Mitteilung lesen.\n");
?>
Man kann natürlich die Angaben auch in Variablen packen:
<?php
//Die Variablen
$an = "eine@email-adresse.de";
$betreff = "Hier der Betreff";
$mitteilung = "Dies ist eine Mitteilung.\nSchön das Sie die Mitteilung lesen.\n";
//Die Funktion
mail($an, $betreff, $mitteilung);
?>
Um eine E-Mail zu versenden, muss der additional_parameters-Parameter From: gesetzt werden. Dieser ist in der Regel in der php.ini des Servers gespeichert. Man kann diesen aber auch Überschtreiben, damit keine Mails von root@1234.server.de verschickt werden. Dazu kann man eine weitere Varuiable setzen:
<?php
//Die Variablen
$an = "beispiel@domain.de";
$betreff = "Hier der Betreff";
$mitteilung = "Dies ist eine Mitteilung.\nSchön das Sie die Mitteilung lesen.\n";
$header = "From: meine@email-adresse.de";
//Die Funktion
mail($an, $betreff, $mitteilung, $header);
?>
Werden mehrere Angaben benötigt, z.B. die Reply-E-Mail-Adresse, oder die PHP-Version, so schreibt man diese auch in den header, aber trennt die jeweiligen Angaben durch \r\n von einander:
$header = 'From: meine@email-adresse.de' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
Weitere Header-Angaben sind: To, Cc, Bcc, Content-Type
Wenn Sie mehere Empfänger haben, so müssen diese mit einem Komma getrennt werden, aber immer in dem o.g. Format:
$an = "beispiel@domain.de, meine@email-adresse";
Oder:
$an = "beispiel@domain.de" . ", ";
$an = "meine@email-adresse";