Skip to main content

Senden Sie E-Mails aus einem PHP-Skript mit der SMTP-Authentifizierung

Scriptcase 8 - Live Demonstration (Juni 2025)

Scriptcase 8 - Live Demonstration (Juni 2025)
Anonim

Das Versenden einer E-Mail aus einem PHP-Skript ist einfach, schnell und einfach … wenn es funktioniert!

Ein Teil von dem, was PHP ausmacht mail () Funktion so einfach ist die mangelnde Flexibilität, aber ein Problem dabei ist, dass die Aktie PHP mail () Normalerweise können Sie den SMTP-Server Ihrer Wahl nicht verwenden und die SMTP-Authentifizierung wird nicht unterstützt.

Glücklicherweise ist es nicht schwierig, die in PHP integrierten Mängel zu überwinden. Für die meisten E-Mail-Benutzer bietet das kostenlose PEAR Mail-Paket die erforderliche Leistung und Flexibilität und authentifiziert sich mit dem gewünschten Postausgangsserver. Zur Erhöhung der Sicherheit werden verschlüsselte SSL-Verbindungen auch für das Senden von E-Mails mit PEAR Mail unterstützt.

So senden Sie E-Mails aus einem PHP-Skript mit SMTP-Authentifizierung

Installieren Sie zunächst das PEAR Mail-Paket. Normalerweise wurde dies bereits mit PHP 4 und höher erledigt. Wenn Sie sich jedoch nicht sicher sind, ob Sie es bereits haben, installieren Sie es.

Kopiere diesen Code:

require_once 'Mail.php'; $from = 'Sandra Sender >'; $to = 'Ramona Recipient '; $subject = 'Hi!'; $body = 'Hi, How are you?'; $host = 'mail.example.com'; $username = 'smtp_username'; $password = 'smtp_password'; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); if (PEAR::isError($mail)) { echo('

' . $mail->getMessage() . '

'); } else { echo('

Message successfully sent!

'); }

Suchen Sie den gesamten fetten Text in unserem Beispiel und ändern Sie die Bereiche des Skripts in die für Sie relevanten Bereiche. Das sind die einzigen Bereiche, in denen Sie tätig sind Muss ändern, damit das PHP-Skript funktioniert, aber passen Sie auch den Betreff und den Text an.

  • von: Die E-Mail-Adresse, von der aus die Nachricht gesendet werden soll
  • zu: E-Mail-Adresse und Name des Empfängers
  • Wirt: Name Ihres ausgehenden SMTP-Servers
  • Nutzername: Der SMTP-Benutzername (normalerweise derselbe wie der zum Abrufen von E-Mails verwendete Benutzername)
  • Passwort: Das Passwort für die SMTP-Authentifizierung

Hinweis: Das obige Beispiel ist ein PHP-Skript, das eine E-Mail mit SMTP-Authentifizierung sendet ohne SSL-Verschlüsselung Wenn Sie auch eine Verschlüsselung wünschen, verwenden Sie stattdessen dieses Skript, indem Sie den fettgedruckten Text mit Ihren Informationen austauschen.

require_once 'Mail.php'; $from = 'Sandra Sender >'; $to = 'Ramona Recipient >'; $subject = 'Hi!'; $body = 'Hi, How are you?'; $host = 'ssl://mail.example.com'; $port = '465'; $username = 'smtp_username'; $password = 'smtp_password'; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port' => $port, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); if (PEAR::isError($mail)) { echo('

' . $mail->getMessage() . '

'); } else { echo('

Message successfully sent!

'); }