Nimalarni bilish kerak
- PHP sinf variantlari: PHPmailer, SwiftMailer, Zend_Mail, XpertMailer, PEAR Mail.
- PEAR Mail: Eslatma pochta serveri nomi > PEAR Mail oʻrnatilganligini tekshiring > PHP faylini berilgan misollar yordamida oʻzgartiring.
Ushbu maqola PEAR Mail’da PHP mail() funksiyasi bilan elektron pochta xabarlarini yuborish uchun SMTP autentifikatsiyasidan qanday foydalanishni tushuntiradi.
PHP Mail funksiyasi bilan elektron pochta xabarlarini yuborish
PHP mail() funksiyasidan foydalanganda siz pochta serveringizdan emas, toʻgʻridan-toʻgʻri veb-serveringizdan elektron pochta xabarlarini yuborasiz. Agar sizda veb-xost orqali pochta serveringiz yoki hatto boshqa xostga ega pochta serveringiz bo'lsa, odatda u orqali pochta jo'natgan ma'qul.
Muammo shundaki, PHP mail() funksiyasi SMTP orqali pochta joʻnatishning oʻrnatilgan usulini taʼminlamaydi. Agar siz ushbu funksiyani ochmoqchi boʻlsangiz, qoʻshimcha PHP sinfini oʻrnatishingiz kerak boʻladi.
Mana bu yerda ba'zi variantlar ishlaydi:
- PHPmailer
- SwiftMailer
- Zend_Mail
- XpertMailer
- PEAR Mail
Biz sizga PEAR Mail-dan qanday foydalanishni ko'rsatamiz, lekin siz SMTP-ni qo'llab-quvvatlaydigan istalgan sinfdan foydalanishingiz mumkin.
Agar veb-xostingizda ushbu sinflardan biri yoki bir nechtasi oʻrnatilgan boʻlsa, unda sizning vaziyatingizga oid qoʻllanmalar boʻlishi mumkin. Agar shunday bo'lsa, davom eting va kirish huquqiga ega bo'lgan sinfdan foydalaning.
Bu usuldan faqat shaxsiy pochta shakllarini yaratish uchun PHP dan foydalansangiz foydalaning. Agar siz WordPress kabi kontentni boshqarish tizimidan (CMS) foydalanayotgan bo‘lsangiz, o‘zingizni yaratishga urinmasdan, SMTP orqali xat yuborish uchun plagin yoki o‘rnatilgan funksiyani qidiring.
SMTP orqali xat yuborish uchun PEAR-dan qanday foydalanish kerak
- Domeningiz pochta serveri xostingizning Mail Exchange (MX) yozuvlariga qaratilganligiga ishonch hosil qiling va pochta serveringiz nomini yozib oling. Masalan, bu mail.yourdomain.net yoki smtp.yourdomain.net bo'lishi mumkin.
- Pochta serveringizda PEAR Mail allaqachon oʻrnatilganligini tekshiring.
- Agar PEAR Mail oʻrnatilmagan boʻlsa, uni oʻrnatish boʻyicha aniq koʻrsatmalar uchun veb-pochta hostingiz bilan maslahatlashing.
- PEAR Mail oʻrnatilgandan soʻng, quyidagi boʻlimlardagi PHP fayl namunalaridan birini ehtiyojlaringizga mos ravishda oʻzgartiring.
SMTP Mail uchun PEAR Mail PHP skriptiga misol
Agar xohlasangiz, noldan oʻz skriptingizni yaratishingiz yoki quyidagi misolni oʻzingiz yoqtirgan holda oʻzgartirishingiz mumkin. Xost oʻzgaruvchisiga veb-pochta serveri nomini kiritganingizga ishonch hosil qiling va foydalanuvchi nomi va parol maydonlarida veb-pochta xostingiz uchun kirish maʼlumotlaridan foydalaning.
require_once "Mail.php";
$from="Yuboruvchi nomi ";
$to="Qabul qiluvchining nomi ";
$subject=" Mavzu qatori shu yerda: ";
$body=" siz xohlagan xabar ";
$host="yourmailhost.com";
$username="foydalanuvchi nomingiz yoki elektron pochta manzilingiz"; $password="sizning parolingiz";
$headers=massiv ('Kimdan'=> $dan, 'Kimga'=> $to, 'Mavzu'=> $subject);
$smtp=Mail::factory('smtp', array ('host'=> $host, 'auth'=> rost, 'username'=> $foydalanuvchi nomi, 'parol'=> $parol));
$mail=$smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
". $mail->getMessage()."
);
} boshqa {echo("
Xabar muvaffaqiyatli yuborildi!
);}
SMTP autentifikatsiyasi va SSL shifrlash uchun PEAR Mail PHP skriptiga misol
Agar siz SMTP autentifikatsiyasi va SSL shifrlashdan foydalanmoqchi boʻlsangiz, avvalgi misolga bir nechta oʻzgartirishlar kiritishingiz kerak boʻladi. Xost oʻzgaruvchisini SSL pochta serveringizga yoʻn altirishingiz, shuningdek, 25, 465, 587, 2525 yoki 8025 kabi port raqamini koʻrsatishingiz kerak boʻladi. Qaysi portni aniqlay olmasangiz, qoʻshimcha maʼlumot olish uchun veb-pochta xostingiz bilan bogʻlaning. foydalaning.
require_once "Mail.php";
$from="Yuboruvchi nomi ";
$to="Qabul qiluvchining nomi ";
$subject=" Mavzu qatori shu yerda: ";
$body=" siz xohlagan xabar ";
$host="ssl://yourmailhost.com";
$port="587"; $username="foydalanuvchi nomingiz yoki elektron pochtangiz";
$password="sizning parolingiz";
$headers=massiv ('Kimdan'=> $dan, ' Kimga'=> $to, 'Mavzu'=> $subject);
$smtp=Mail::factory('smtp', massiv ('xost'=>) $host, 'port'=> $port, 'auth'=> true, 'username'=> $foydalanuvchi nomi, 'parol'=> $parol));
$mail=$smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
". $mail->getMessage()."
);
} boshqa {echo("
Xabar muvaffaqiyatli yuborildi!
);}