Skip to main content

Pošlji e-pošto iz PHP-skripta z uporabo preverjanja pristnosti SMTP

Anonim

Pošiljanje e-pošte iz PHP skripta je enostavno, hitro in enostavno … če deluje!

Del tega, kar naredi PHP pošta () Funkcija tako preprosta je pomanjkanje prožnosti, vendar je ena težava s tem, da je zaloga PHP pošta () običajno ne dovoljuje uporabe strežnika SMTP po vaši izbiri in ne podpira preverjanja pristnosti SMTP.

Na srečo premagovanje vgrajenih pomanjkljivosti PHP ni težavno. Za večino uporabnikov e-pošte brezplačni paket PEAR Mail ponuja vso potrebno moč in prilagodljivost ter se avtentikira z želenim strežnikom odhodne pošte. Za izboljšano varnost so šifrirane povezave SSL podprte tudi za pošiljanje pošte s pomočjo PEAR Maila.

Kako poslati e-pošto iz PHP skripta z avtentifikacijo SMTP

Za začetek namestite paket PEAR Mail. Običajno bo to že storjeno za vas s PHP 4 ali novejšimi, vendar če niste prepričani, če ga že imate, nadaljujte in ga namestite.

Kopirajte to kodo:

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!

'); }

Poiščite vse krepko besedilo v našem primeru in spremenite tista področja skripte na vse, kar je pomembno za vas. To so edina področja, ki si ti moraš spremenite, da bo pisava PHP delovala, prav tako pa morate tudi prilagoditi besedilo predmeta in telesa.

  • od: E-poštni naslov, iz katerega želite poslati sporočilo
  • do: E-poštni naslov prejemnika in ime
  • gostitelj: Vaše odhodno ime strežnika SMTP
  • uporabniško ime: Uporabniško ime SMTP (običajno isto kot uporabniško ime, ki se uporablja za nalaganje pošte)
  • geslo: Geslo za overjanje SMTP

Opomba: Zgornji primer je PHP skript, ki pošilja e-pošto s preverjanjem SMTP, vendar brez SSL šifriranje. Če želite tudi šifriranje, uporabite ta skript, namesto tega zamenjajte krepko besedilo z vašimi informacijami.

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!

'); }