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 Mail-д зориулсан PEAR Mail PHP скриптийн жишээ

Хэрэв та хүсвэл эхнээс нь өөрийн скриптийг үүсгэх эсвэл дараах жишээг өөрийн хүссэнээр өөрчлөх боломжтой. Хост хувьсагчид вэб мэйл серверийнхээ нэрийг оруулж, хэрэглэгчийн нэр, нууц үгийн талбарт вэб шуудангийн хостын нэвтрэх мэдээллээ ашиглана уу.

require_once "Mail.php";

$from="Илгээгчийн нэр";

$to="Хүлээн авагчийн нэр";

$subject=" Сэдвийн мөр энд байна: ";

$body=" таны хүссэн мессеж ";

$host="yourmailhost.com";

$username="таны хэрэглэгчийн нэр эсвэл имэйл"; $password="таны нууц үг";

$толгой=массив ('From'=> $from, 'To'=> $to, 'Subject'=> $сэдэв);

$smtp=Mail::factory('smtp', массив ('host'=> $хост, 'auth'=> үнэн, 'хэрэглэгчийн нэр'=> $хэрэглэгчийн нэр, 'нууц үг'=> $нууц үг));

$мэйл=$smtp->send($to, $headers, $body);

хэрэв (PEAR::isError($мэйл)) {

echo("

". $mail->getMessage()."

);

} өөр {echo("

Зурвас амжилттай илгээгдсэн!

);}

SMTP баталгаажуулалт болон SSL шифрлэлтийн PEAR шуудангийн PHP скриптийн жишээ

Хэрэв та SMTP нэвтрэлт танилт болон SSL шифрлэлтийг ашиглахыг хүсвэл өмнөх жишээн дээр хэд хэдэн өөрчлөлт хийх шаардлагатай болно. Та өөрийн SSL мэйл сервер рүү хост хувьсагчийг зааж өгөхөөс гадна 25, 465, 587, 2525 эсвэл 8025 гэх мэт портын дугаарыг зааж өгөх хэрэгтэй. Хэрэв та аль портыг сонгохоо мэдэхгүй байгаа бол дэлгэрэнгүй мэдээлэл авахын тулд вэб шуудангийн хосттой холбогдоно уу. ашиглах.

require_once "Mail.php";

$from="Илгээгчийн нэр";

$to="Хүлээн авагчийн нэр";

$subject=" Сэдвийн мөр энд байна: ";

$body=" таны хүссэн мессеж ";

$host="ssl://yourmailhost.com";

$port="587"; $username="таны хэрэглэгчийн нэр эсвэл имэйл";

$password="таны нууц үг";

$толгой=массив ('From'=> $from, ' Хэнд'=> $-д, 'Сэдэв'=> $сэдэв);

$smtp=Mail::factory('smtp', массив ('хост'=>) $хост, 'порт'=> $порт, 'auth'=> үнэн, 'хэрэглэгчийн нэр'=> $хэрэглэгчийн нэр, 'нууц үг'=> $нууц үг));

$мэйл=$smtp->send($to, $headers, $body);

if (PEAR::isError($мэйл)) {

echo("

". $mail->getMessage()."

);

} өөр {echo("

Зурвас амжилттай илгээгдсэн!

);}

Зөвлөмж болгож буй: