SMTP аутентификациясы арқылы PHP сценарийінен электрондық поштаны қалай жіберуге болады

Мазмұны:

SMTP аутентификациясы арқылы PHP сценарийінен электрондық поштаны қалай жіберуге болады
SMTP аутентификациясы арқылы PHP сценарийінен электрондық поштаны қалай жіберуге болады
Anonim

Не білу керек

  • PHP сынып опциялары: PHPmailer, SwiftMailer, Zend_Mail, XpertMailer, PEAR Mail.
  • PEAR Mail: пошта серверінің атауын ескеріңіз > PEAR Mail орнатылғанын тексеріңіз > PHP файлын келтірілген мысалдар арқылы өзгертіңіз.

Бұл мақала PEAR Mail қызметінде PHP mail() функциясымен электрондық поштаны жіберу үшін SMTP аутентификациясын қалай пайдалану керектігін түсіндіреді.

PHP пошта функциясы арқылы электрондық поштаны жіберу

PHP mail() функциясын пайдаланған кезде, электрондық поштаны пошта серверінен емес, тікелей веб-серверден жібересіз. Егер сізде веб-хост арқылы пошта сервері немесе тіпті басқа хосты бар пошта сервері болса, оның орнына поштаны сол арқылы жіберген дұрыс.

Мәселе мынада, PHP mail() функциясы поштаны SMTP арқылы жіберудің ешқандай кірістірілген әдісін қамтамасыз етпейді. Бұл функцияны ашқыңыз келсе, қосымша PHP сыныбын орнатуыңыз керек.

Міне кейбір опциялар жұмыс істейді:

  • PHPmailer
  • SwiftMailer
  • Zend_Mail
  • XpertMailer
  • PEAR поштасы

Біз сізге PEAR Mail қолданбасын қалай пайдалану керектігін көрсетеміз, бірақ сіз SMTP қолдайтын кез келген сыныпты пайдалана аласыз.

Image
Image

Егер веб-хостыңызда осы сыныптардың біреуі немесе бірнешеуі әлдеқашан орнатылған болса, онда сіздің жағдайыңызға қатысты оқулықтар болуы мүмкін. Олай болса, кіре алатын сыныпты пайдаланыңыз.

Бұл әдісті жеке пошта пішіндерін жасау үшін PHP пайдалансаңыз ғана пайдаланыңыз. Егер сіз WordPress сияқты мазмұнды басқару жүйесін (CMS) пайдаланып жатсаңыз, өз хатыңызды жасаудың орнына SMTP арқылы хат жіберу үшін плагинді немесе кірістірілген функцияны іздеңіз.

SMTP арқылы хат жіберу үшін PEAR қалай пайдалануға болады

  1. Доменіңіз пошта сервері хостының Mail Exchange (MX) жазбаларына бағытталғанына көз жеткізіңіз және пошта серверінің атын жазып алыңыз. Мысалы, ол mail.yourdomain.net немесе smtp.yourdomain.net болуы мүмкін.
  2. Пошта серверінде PEAR Mail орнатылғанын тексеріңіз.
  3. Егер PEAR Mail орнатылмаған болса, оны орнату бойынша нақты нұсқауларды алу үшін веб-пошта хостыңызбен кеңесіңіз.
  4. PEAR Mail орнатылғаннан кейін келесі бөлімдердегі мысал PHP файлдарының бірін қажеттіліктеріңізге сай етіп өзгертіңіз.

SMTP поштасына арналған PEAR Mail PHP сценарийінің мысалы

Қаласаңыз, өз сценарийіңізді нөлден жасай аласыз немесе келесі мысалды өз қалауыңыз бойынша өзгерте аласыз. Хост айнымалы мәніне веб-пошта серверінің атын енгізіңіз және пайдаланушы аты мен құпия сөз өрістерінде веб-пошта хосты үшін кіру ақпаратын пайдаланыңыз.

require_once "Mail.php";

$from="Жіберушінің аты";

$to="Алушының аты";

$subject=" Тақырып жолы осында: ";

$body=" қалаған кез келген хабар ";

$host="yourmailhost.com";

$username="пайдаланушы атыңыз немесе электрондық поштаңыз"; $password="құпия сөзіңіз";

$тақырыптар=массив ('Кімнен'=> $кімнен, 'Кімге'=> $кейін, 'Тақырып'=> $тақырып);

$smtp=Mail::factory('smtp', массив ('хост'=> $хост, 'auth'=> шын, 'username'=> $username, 'password'=> $password));

$mail=$smtp->send($to, $headers, $body);

егер (PEAR::isError($mail)) {

echo("

". $mail->getMessage()."

);

} басқа {echo("

Хабар сәтті жіберілді!

);}

SMTP аутентификациясы мен SSL шифрлауына арналған PEAR Mail PHP сценарийінің мысалы

SMTP аутентификациясын және SSL шифрлауын пайдаланғыңыз келсе, алдыңғы мысалға бірнеше өзгертулер енгізуіңіз керек. Хост айнымалы мәнін SSL пошта серверіне бағыттау керек, сондай-ақ 25, 465, 587, 2525 немесе 8025 сияқты порт нөмірін көрсету керек. Қай портты анықтай алмасаңыз, қосымша ақпарат алу үшін веб-пошта хостына хабарласыңыз. пайдаланыңыз.

require_once "Mail.php";

$from="Жіберушінің аты";

$to="Алушының аты";

$subject=" Тақырып жолы осында: ";

$body=" қалаған кез келген хабар ";

$хост="ssl://yourmailhost.com";

$port="587"; $username="пайдаланушы атыңыз немесе электрондық поштаңыз";

$password="құпия сөзіңіз";

$тақырыптар=массив («Кімнен'=> $кімнен, ' Кімге'=> $кімге, 'Тақырып'=> $тақырып);

$smtp=Пошта::factory('smtp', массив ('хост'=> $хост, 'порт'=> $порт, 'auth'=> шын, 'username'=> $пайдаланушы аты, 'пароль'=> $пароль));

$mail=$smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {

echo("

". $mail->getMessage()."

);

} басқа {echo("

Хабар сәтті жіберілді!

);}

Ұсынылған: