Skip to main content

Изпращане на имейл от PHP скрипт, използващ удостоверяване чрез SMTP

Week 9 (Април 2025)

Week 9 (Април 2025)
Anonim

Изпращането на имейл от PHP скрипт е проста, бърза и лесна … ако тя работи!

Част от това, което прави PHP поща () функция толкова просто е липсата на гъвкавост, но един проблем с това е, че фондовата PHP поща () обикновено не ви позволява да използвате SMTP сървъра по ваш избор и той не поддържа SMTP удостоверяване.

За щастие преодоляването на вградените недостатъци на PHP не е трудно. За повечето потребители на електронна поща безплатният пакет PEAR Mail предлага цялата необходима мощност и гъвкавост и се удостоверява с желания сървър за изходяща поща. За по-голяма сигурност се поддържат шифрирани SSL връзки за изпращане на поща чрез PEAR поща също.

Как да изпратите имейл от 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!

'); }