PHP 4.3

12.2 E-Mail-Versand in PHP

Das Versenden von E-Mails in PHP ist relativ einfach. PHP stellt bereits eine Funktion zur Verfügung, mit der eine E-Mail über einen SMTP-Server verschickt werden kann.

Anwendungen in der Praxis sind beispielsweise ein Newsletterversand, bei dem eine Nachricht an viele Empfänger automatisch verschickt werden kann. Oft müssen sich Benutzer von Internetdiensten aber auch auf einer Webseite als User registrieren lassen. Eine Bestätigung der Registrierung per E-Mail an den User lässt sich mit PHP ebenfalls sehr gut realisieren.

PHP benutzt dazu normalerweise auf Unix/Linux-Systemen das "sendmail-Programm". In der Datei php.ini muss dafür der Pfad zu "sendmail" angegeben werden. Dies ist in der Regel aber bereits vorkonfiguriert.
Windows benutzt anstatt eines externen Programms dazu eine interne Funktion. Sie müssen lediglich in der Datei php.ini eine gültige Adresse eines SMTP-Servers angeben.

In PHP werden Mails mit der Funktion mail() versendet. Die Benutzung ist so einfach, dass dies am besten mit einem Beispiel gezeigt werden kann:

Beispiel zum Versenden einer E-Mail
<?php

  // E-Mail Adresse des Empfängers
  $empfaenger = "klaus@example.com";
  
  // Die Betreff (Subject) Zeile der E-Mail
  $betreff = "Hallo, ich bin es ...";
  
  // Der eigentliche Text (Body) der Nachricht
  $text = "Hallo Klaus,\n\nIch gruesse Dich. Das ist eine E-Mail,
  die ich mit PHP verschickt habe...";
  
  // Mail verschicken
  mail ($empfaenger, $betreff, $text);

?>

Es ist ebenfalls möglich, eine E-Mail gleichzeitig an mehrere Empfänger zu senden. Dazu werden einfach die E-Mail-Adressen jeweils mit einem Komma getrennt und als erster Parameter übergeben.

Beispiel zum Versenden einer E-Mail an mehrere Adressen
<?php

  // E-Mail Adressen der Empfänger
  $empfaenger = "klaus@example.com"; // alle E-Mail Adressen
  $empfaenger.= ", gabi@example.com"; // in einem String, jeweils mit
  $empfaenger.= ", unclebill@example.com"; // einem Komma getrennt

  // Die Betreff (Subject) Zeile der E-Mail
  $betreff = "Urlaub auf Mallorca";

  // Der eigentliche Text (Body) der Nachricht
  $text = "Hallo meine Freunde,\n\nIch bin gerade auf Mallorca ...";

  // Mail verschicken
  mail ($empfaenger, $betreff, $text);

?>

Kommentare (0)

Ihr Kommentar

Name