تعلم كيفية إرسال البريد الإلكتروني من البرنامج النصي PHP باستخدام مصادقة SMTP بسيطة

كيفية الاتصال بخادم SMTP صادر من برنامج نصي PHP

إن إرسال بريد إلكتروني من برنامج PHP هو أمر بسيط وسريع وسهل ... إذا كان يعمل!

جزء مما يجعل وظيفة البريد () PHP بسيطة للغاية هو عدم قدرتها على المرونة ، ولكن مشكلة واحدة هي أن بريد PHP () لا يسمح لك عادة باستخدام خادم SMTP الذي تختاره ، دعم توثيق SMTP.

لحسن الحظ ، ليس من الصعب التغلب على أوجه القصور المضمنة في PHP. بالنسبة لمعظم مستخدمي البريد الإلكتروني ، توفر حزمة بريد PEAR المجانية كل القوة والمرونة اللازمة ، وتوثيقها مع خادم البريد الصادر المرغوب. لتعزيز الأمان ، يتم دعم اتصالات SSL المشفرة لإرسال البريد باستخدام بريد PEAR أيضًا.

كيفية إرسال البريد الإلكتروني من سيناريو PHP مع مصادقة SMTP

للبدء ، قم بتثبيت حزمة PEAR Mail. عادةً ما يكون هذا قد تم إجراؤه لك من خلال PHP 4 والإصدارات الأحدث ، ولكن إذا لم تكن متأكدًا من أنك قد حصلت عليه بالفعل ، فابدأ وقم بتثبيته.

نسخ هذا الرمز:

<؟ php require_once "Mail.php" ؛ $ from = " Sandra Sender >"؛ $ to = " Ramona Recipient "؛ $ subject = "مرحبًا!"؛ $ body = "مرحبًا ، \ n \ n كيف حالك؟"؛ $ 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)؛ إذا كان (PEAR :: isError ($ mail)) {echo ("

". $ mail-> getMessage (). "")؛ } else {echo ("

تم إرسال الرسالة بنجاح! ")؛ ؟

حدد موقع كل النص الغامق في مثالنا وقم بتغيير مناطق النص إلى كل ما يتعلق بك. هذه هي المجالات الوحيدة التي يجب عليك تغييرها لكي يعمل برنامج PHP النصي ، ولكن تأكد أيضًا من ضبط الموضوع ونص النص أيضًا.

  • من : عنوان البريد الإلكتروني الذي تريد إرسال الرسالة منه
  • إلى : عنوان البريد الإلكتروني للمستلم واسمه
  • host : اسم خادم SMTP الصادر
  • اسم المستخدم : اسم مستخدم SMTP (عادةً نفس اسم المستخدم المستخدم لاسترداد البريد)
  • كلمة المرور : كلمة المرور لمصادقة SMTP

ملاحظة: المثال أعلاه هو من برنامج نصي PHP يرسل بريدًا إلكترونيًا باستخدام مصادقة SMTP ولكن بدون تشفير SSL. إذا كنت تريد التشفير أيضًا ، فاستخدم هذا البرنامج النصي بدلاً من ذلك ، ثم قم بمبادلة النص الغامق مع معلوماتك.

<؟ php require_once "Mail.php" ؛ $ from = " Sandra Sender >"؛ $ to = " Ramona Recipient >"؛ $ subject = "مرحبًا!"؛ $ body = "مرحبًا ، \ n \ n كيف حالك؟"؛ $ 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' => $ كلمة المرور))؛ $ mail = $ smtp-> send ($ to، $ headers، $ body)؛ إذا كان (PEAR :: isError ($ mail)) {echo ("

". $ mail-> getMessage (). "")؛ } else {echo ("

تم إرسال الرسالة بنجاح! ")؛ ؟