Skip to main content

Αποστολή μηνύματος ηλεκτρονικού ταχυδρομείου από δέσμη ενεργειών PHP που χρησιμοποιεί έλεγχο ταυτότητας SMTP

Week 9 (Ιούνιος 2025)

Week 9 (Ιούνιος 2025)
Anonim

Η αποστολή ενός μηνύματος ηλεκτρονικού ταχυδρομείου από ένα σενάριο PHP είναι απλή, γρήγορη και εύκολη … αν λειτουργεί!

Μέρος αυτού που κάνει το PHP ταχυδρομείο() λειτουργία τόσο απλό είναι η έλλειψη ευελιξίας, αλλά ένα πρόβλημα με αυτό είναι ότι το απόθεμα PHP ταχυδρομείο() δεν σας επιτρέπουν συνήθως να χρησιμοποιήσετε το διακομιστή SMTP της επιλογής σας και δεν υποστηρίζει τον έλεγχο ταυτότητας SMTP.

Ευτυχώς, η υπερπήδηση των ενσωματωμένων ελλείψεων της PHP δεν είναι δύσκολη. Για τους περισσότερους χρήστες ηλεκτρονικού ταχυδρομείου, το δωρεάν πακέτο PEAR Mail προσφέρει όλη την απαιτούμενη ισχύ και ευελιξία και πιστοποιεί με τον επιθυμητό διακομιστή εξερχόμενης αλληλογραφίας. Για βελτιωμένη ασφάλεια, υποστηρίζονται κρυπτογραφημένες συνδέσεις SSL για την αποστολή αλληλογραφίας μέσω του PEAR Mail.

Πώς να στείλετε email από ένα σενάριο PHP με έλεγχο ταυτότητας SMTP

Για να ξεκινήσετε, εγκαταστήστε το πακέτο PEAR Mail. Συνήθως, αυτό θα έχει γίνει ήδη για εσάς με την PHP 4 και αργότερα, αλλά αν δεν είστε σίγουροι αν το έχετε ήδη, προχωρήστε και εγκαταστήστε το.

Αντέγραψε αυτόν τον κωδικό:

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!

'); }

Εντοπίστε όλο το τολμηρό κείμενο στο παράδειγμά μας και αλλάξτε εκείνες τις περιοχές του σεναρίου σε ό, τι είναι σχετικό με εσάς. Αυτές είναι οι μόνες περιοχές που εσείς πρέπει αλλάξτε για να λειτουργήσει το σενάριο PHP, αλλά και να ρυθμίσετε το θέμα και το κείμενο κορμού.

  • από: Η διεύθυνση ηλεκτρονικού ταχυδρομείου από την οποία θέλετε να αποστέλλεται το μήνυμα
  • προς το: Η διεύθυνση ηλεκτρονικού ταχυδρομείου και το όνομα του παραλήπτη
  • πλήθος: Το εξερχόμενο όνομα διακομιστή SMTP
  • όνομα χρήστη: Το όνομα χρήστη SMTP (συνήθως το ίδιο με το όνομα χρήστη που χρησιμοποιείται για την ανάκτηση αλληλογραφίας)
  • Κωδικός πρόσβασης: Ο κωδικός πρόσβασης για τον έλεγχο ταυτότητας SMTP

Σημείωση: Το παραπάνω παράδειγμα είναι ένα σενάριο PHP που στέλνει ένα μήνυμα ηλεκτρονικού ταχυδρομείου με έλεγχο ταυτότητας SMTP, αλλά χωρίς Κρυπτογράφηση SSL. Εάν θέλετε και κρυπτογράφηση, χρησιμοποιήστε αυτό το σενάριο και πάλι, αλλάζοντας το έντονο κείμενο με τις πληροφορίες σας.

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!

'); }