PHPMailer für Mailversand in PHP-Scripten nutzen

Oftmals ist der Versand von Emails in PHP Scripten über die normale mail()-Funktion zu unsicher. Um die Versandsicherheit (Spamfilter etc.) zu erhöhen lohnt sich der Einsatz eines Mailservers zum Versand. Hierfür gibt es die PHP-Klasse PHPMailer die zahlreiche Möglichkeiten bietet Emails zu versenden.

Eine einfache Funktion dient als zentrale Anlaufstelle für jeglichen Emailversand:

//// VERSENDEN DER EMAIL ////
function send_email($empf, $mailtext, $betreff, $anhang) {

$mail = new PHPMailer();

$mail->IsSMTP(); // send via SMTP
$mail->Host = “mein.mailserver.de”; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = “XXXXX”; // SMTP username
$mail->Password = “XXXXXX”; // SMTP password

$mail->From = “meine@emailadresse.de”;
$mail->FromName = “Mein Name”;
$mail->AddReplyTo(“meine@emailadresse.de”,”Mein Name”);

/// EMPFÄNGER EINTRAGEN ////
$teile = explode(“;”, $empf);
reset ($teile);
while (list ($key, $val) = each ($teile)) {
$mail->AddBCC($val);
}

/// ANHÄNGE ///
$teile = explode(“;”, $anhang);
reset ($teile);
while (list ($key, $val) = each ($teile)) {
$dateiname = explode(“/”, $val);
$dateiname = array_pop($dateiname);
/// Anhängen
$mail->AddAttachment($val, $dateiname);
}

$mail->IsHTML(true); // send as HTML

$mail->Subject = $betreff;
$mail->Body = $mailtext;
$mail->AltBody = $mailtext;

if(!$mail->Send()) { exit; }

$mail->ClearAddresses();
$mail->ClearAttachments();
}

Vor dem Aufruf dieser Funktion muss lediglich die Klasse PHPMailer inkludiert werden z.B. include(“../phpmailer/class.phpmailer.php”);

Die Emails werden direkt über den angegeben Mailserver versandt und somit ist die Wahrscheinlichkeit, dass Sie in keinem Spamfilter hängen bleiben, geringer.

Dieser Funktion kann man folgende Argumente übergeben:

$empf
Empfänger der Email – bei mehreren mit Strichpunkt getrennt – Versand erfolgt als BCC

$anhang
Anhänge der Email – bei mehreren mit Strichpunkt getrennt – übergeben wird lediglich der Pfad zur Datei z.B. files/file.dat

Im obigen Beispiel wird die Email im HTML-Format versandt. Ist dies nicht gewünscht muss lediglich die Zeile

$mail->IsHTML(true);

auskommentiert werden.

Download/Projektseite von PHPMailer: http://phpmailer.sourceforge.net

Über admin

Herzlich Willkommen in meinem Blog. Hier will ich über meine Erfahrungen mit PHP & MySQL berichten und hilfreiche Tips bei der Programmierung geben. Viel Spaß! :)
Dieser Beitrag wurde unter PHP, Schnipsel abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>