Um E-Mails mit PHP zu versenden, bringt PHP die Funktion mail($to, $subject, $body, $header) mit. Da diese Funktion aber ohne SMTP Authentifizierung funktioniert, werden Mails vom Empfänger häufig als SPAM markiert oder bei einigen E-Mail Anbietern gar nicht erst empfangen.

Um das zu verhindern, empfiehlt sich das saubere Versenden mit SMTP Authentifizierung.

Installation

Für die SMTP Authentifizierung werden die Paket Mail und Net_SMTP benötigt.
Entweder diese Pakete downloaden und in die Anwendung integrieren oder wenn möglich mit pear installieren.

pear install Mail
pear install Net_Smtp

PHP Script

require_once "Mail.php";

$body = "Mein Mail Bodyn";
$subject = "Mail mit SMTP Authentifizierung";
$mail_to = "zumir@meinemailserver.de";
$mail_from = "phpmailer@meinemailserver.de";

//SMTP Verbindungsdaten
$host = "smtp.meinemailserver.de";
$username = "phpmailer";
$password = "SuperGeheim";

$smtp = Mail::factory('smtp',
 array (
 'host' => $host,
 'auth' => true,
 'username' => $username,
 'password' => $password
));

$headers = array (
 'From' => $mail_from,
 'To' => $mail_to,
 'Subject' => $subject
);
$mail = $smtp->send($mail_to, $headers, $body);

if (PEAR::isError($mail)) {
 echo "Fehler beim Versender der E-Mail : ". $mail->getMessage();
}
In PHP E-Mail mit SMTP Authentifizierung versenden
Tagged on:                 

8 thoughts on “In PHP E-Mail mit SMTP Authentifizierung versenden

  • 2009-08-22 at 12:26
    Permalink

    danke fuer das php script..

    Reply
  • 2009-11-15 at 21:14
    Permalink

    Hallo,

    ich verstehe im moment überhaupt nicht, was ich mit “Mail” und “Net_SMTP” machen muss…? *ratlos guck* 🙁

    Reply
    • 2009-11-16 at 11:03
      Permalink

      Damit die Mails per SMTP versendet werden können, werden diese beiden Pakete benötigt. Das ganze geht halt mittels PEAR

      pear install Mail
      pear install Net_Smtp

      oder als manueller download.

      Reply
  • 2009-11-16 at 12:00
    Permalink

    Hm… *koppkratz* Also, ich habe mir jetzt die beiden Pakete da heruntergeladen und auf meinen Webspace hochgeladen. Soweit so gut… jetzt steht aber in der Mail.php als erste “require_once PEAR.php”, aber diese Datei finde ich wo nirgends…?

    Reply
  • 2010-03-09 at 18:14
    Permalink

    funzt ned bei gmail brrr error code 555

    Reply
  • 2011-05-23 at 20:51
    Permalink

    Besten Dank für diesen Artikel, kam echt gelegen. Das Script wird gleich ausgetestet!!

    Reply
  • 2011-08-17 at 18:15
    Permalink

    Funktioniert bestens bei mir! Super sache!

    Vielen Dank

    Gruß Hunni

    Reply

Leave a Reply to hunniCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.