إرسال بريد الكتروني من خلال السيرفر المحلي XAMPP
عند برمجة وتطوير موقع على جهاز الكمبيوتر باستخدام السيرفر المحلي XAMPP وعند محاولة إرسال بريد الكتروني email مثلاً باستخدام الدالة mail كالتالي:
<?php
$to = "somebody@example.com";
$subject = "My subject";
$txt = "Hello world!";
$headers = "From: webmaster@example.com" . "\r\n";
mail($to, $subject, $txt, $headers);
?>
فإنه يظهر الخطأ التالي:
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in D:\xampp\htdocs\send_mail.php on line 7
لأنه لا يمكنك إرسال بريد الكتروني عبر جهاز الكمبيوتر لعدم وجود مخدم بريد الكتروني. ولحل هذه المشكلة يمكن جعل XAMPP يستخدم بريدك الالكتروني gmail ليرسل إيميلات محلياً بعد إجراء التعديلات التالية:
لنفترض أن مجلد xampp موجود لديك في القرص D قم بفتح الملف D:\xampp\php\php.ini
وعدل الآتي:
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = my-gmail-id@gmail.com
sendmail_path ="\"D:\xampp\sendmail\sendmail.exe\" -t"
بدلاً من my-gmail-id ضع إيميلك مع مراعاة وضع المسار الصحيح في sendmail_path حيث أنني افترضت أنه موجود على القرص D في المثال السابق.
الآن افتح الملف D:\xampp\sendmail\sendmail.ini
واستبدل ما يلي:
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=my-gmail-id@gmail.com
auth_password=my-gmail-password
وبالتأكيد بدلاً من my-gmail-id بإيميلك و my-gmail-password بكلمة المرور الخاصة بإيميلك.
قم بإعادة تشغيل XAMPP وجرب إرسال البريد الالكتروني وستتم عملية الإرسال
0