یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دوره‌ها

استفاده از تخفیف‌ها
ثانیه
دقیقه
ساعت
روز
جواد
2 هفته پیش توسط جواد مطرح شد
4 پاسخ

مشکل در ارسال ایمیل با تابع mail

سلام دوستان من قصد دارم با تابع mail
در php ایمیل ارسال کنم در لوکال و بعد در هاست
و در لو کال من به این خطا میخورم میخام یه کد ارسال کنم

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 C:\xampp\htdocs\project\index.php on line 21

$to = "olivoooo@gmail.com";
$subject = "ایمیل با ساختار html";
$message = 12345;

mail($to, $subject, $message);
die();

ثبت پرسش جدید
vahid1379
تخصص : wp developer
@vahid1379 2 هفته پیش مطرح شد
1

سلام ببینید برای ارسال ایمیل در لوکال هاست اول باید داخل فایل php.ini یکسری تنظیمات رو ست کنید تا ایمیل بزنه البته اگه میخاید بعدا پروژه خودتون رو روی هاست یا سرور ببرید دیگه تابع mail کار نمیکنه و بجاش باید از سرور های اختصاصی ارسال ایمیل استفاده کنید و کتابخانه هایی مثل phpmailer علتش اینکه هاستینگ ها بخاطر مسائل امنیتی و جلوگیری از ارسال اسپم این تابع رو غیرفعال کردن تا کار نکنه البته بعضی از هاستینگ ها شاستی باز میزارن ولی محدودیت میزارن

خطایی که بهتون داده داره میگه تنظیمات SMTP سرور داخل لوکال هاست اشتباه هست برا همین ایمیل ارسال نمیشه

این فایل رو پیدا کنید. C:\xampp\sendmail.ini

smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=tls
error_logfile=error_log.txt
auth_username=youremail@gmail.com
auth_password=yourpassword
force_sender=youremail@gmail.com

smtp_server: به آدرس سرور SMTP اشاره داره (مثلا Gmail: smtp.gmail.com).
smtp_port: باید پورت مناسب برای اتصال امن باشه (معمولاً 587 برای TLS).
smtp_ssl: اگر از TLS استفاده می‌کنید، آن را tls تنظیم کن
auth_username: آدرس ایمیلت
auth_password: رمز عبور ایمیلت (توجه داشته باش که برای حساب‌های Google باید از رمز عبور اختصاصی برنامه یا اپلیکیشن استفاده کنی، نه رمز عبور حساب Google).
وقتی موارد بالا رو ست کردی برو داخل فایل php.ini
و کد زیر رو بزن تا php روی فایل sendmail ایمیل بزنه
C:\xampp\php\php.ini

[mail function]
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

بعدش کلا زمپ و آپاچی رو ریست کن تا تنظیمات ست بشه

موفق باشید


vahid1379
تخصص : wp developer
@vahid1379 2 هفته پیش مطرح شد
0

کلا تابع mail خیلی وقته دیگه به کار نمیاد برای ارسال ایمیل باید از سرور ایمیل استفاده کنید


جواد
تخصص : php
@node.core 2 هفته پیش مطرح شد
0

میشه یکم توضیح بدید ممنون


جواد
تخصص : php
@node.core 2 هفته پیش مطرح شد
0

سلام میشه توضیح بدید لطقا @ossvahid


vahid1379
تخصص : wp developer
@vahid1379 2 هفته پیش مطرح شد
1

سلام ببینید برای ارسال ایمیل در لوکال هاست اول باید داخل فایل php.ini یکسری تنظیمات رو ست کنید تا ایمیل بزنه البته اگه میخاید بعدا پروژه خودتون رو روی هاست یا سرور ببرید دیگه تابع mail کار نمیکنه و بجاش باید از سرور های اختصاصی ارسال ایمیل استفاده کنید و کتابخانه هایی مثل phpmailer علتش اینکه هاستینگ ها بخاطر مسائل امنیتی و جلوگیری از ارسال اسپم این تابع رو غیرفعال کردن تا کار نکنه البته بعضی از هاستینگ ها شاستی باز میزارن ولی محدودیت میزارن

خطایی که بهتون داده داره میگه تنظیمات SMTP سرور داخل لوکال هاست اشتباه هست برا همین ایمیل ارسال نمیشه

این فایل رو پیدا کنید. C:\xampp\sendmail.ini

smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=tls
error_logfile=error_log.txt
auth_username=youremail@gmail.com
auth_password=yourpassword
force_sender=youremail@gmail.com

smtp_server: به آدرس سرور SMTP اشاره داره (مثلا Gmail: smtp.gmail.com).
smtp_port: باید پورت مناسب برای اتصال امن باشه (معمولاً 587 برای TLS).
smtp_ssl: اگر از TLS استفاده می‌کنید، آن را tls تنظیم کن
auth_username: آدرس ایمیلت
auth_password: رمز عبور ایمیلت (توجه داشته باش که برای حساب‌های Google باید از رمز عبور اختصاصی برنامه یا اپلیکیشن استفاده کنی، نه رمز عبور حساب Google).
وقتی موارد بالا رو ست کردی برو داخل فایل php.ini
و کد زیر رو بزن تا php روی فایل sendmail ایمیل بزنه
C:\xampp\php\php.ini

[mail function]
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

بعدش کلا زمپ و آپاچی رو ریست کن تا تنظیمات ست بشه

موفق باشید


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام