Skip to main content

Trimiteți un e-mail dintr-un script PHP utilizând autentificarea SMTP

Linux Tutorial for Beginners: Introduction to Linux Operating System (Aprilie 2025)

Linux Tutorial for Beginners: Introduction to Linux Operating System (Aprilie 2025)
Anonim

Trimiterea unui e-mail dintr-un script PHP este simplu, rapid și ușor … dacă funcționează!

O parte din ceea ce face PHP Poștă() funcția atât de simplu este lipsa de flexibilitate, dar o problemă cu faptul că este faptul că stocul PHP Poștă() nu vă permite, de obicei, să utilizați serverul SMTP la alegere și nu acceptă autentificarea SMTP.

Din fericire, depășirea deficiențelor încorporate în PHP nu este dificilă. Pentru majoritatea utilizatorilor de e-mail, pachetul gratuit PEAR Mail oferă toată puterea și flexibilitatea necesare și se autentifică cu serverul de e-mail de ieșire dorit. Pentru securitate sporită, conexiunile SSL criptate sunt acceptate pentru trimiterea de e-mail folosind și PEAR Mail.

Cum se trimite un e-mail dintr-un script PHP cu autentificare SMTP

Pentru a începe, instalați pachetul PEAR Mail. De obicei, acest lucru va fi fost făcut deja pentru dvs. cu PHP 4 și mai târziu, dar dacă nu sunteți sigur dacă aveți deja acest lucru, continuați și instalați-l.

Copiați acest cod:

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!

'); }

Localizați tot textul îndrăzneț în exemplul nostru și schimbați acele zone ale scriptului la ceea ce este relevant pentru dvs. Acestea sunt singurele zone pe care tu trebuie sa schimbați pentru ca scriptul PHP să funcționeze, dar, de asemenea, asigurați-vă că ajustați și subiectul și textul corpului.

  • din: Adresa de e-mail de la care doriți să se trimită mesajul
  • la: Adresa și numele de e-mail al destinatarului
  • gazdă: Numele serverului SMTP de ieșire
  • nume de utilizator: Numele de utilizator SMTP (în mod tipic același cu numele de utilizator folosit pentru a prelua poșta)
  • parola: Parola pentru autentificarea SMTP

Notă: Exemplul de mai sus este un script PHP care trimite un e-mail cu autentificare SMTP, dar fără Criptare SSL. Dacă doriți și criptare, utilizați în schimb acest script, din nou, schimbând textul aldine cu informațiile dvs.

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!

'); }