سلام، خسته نباشید
من تو ارسال ایمیل در xampp با sendmail مشکل دارم؛ که دو روزی هست درگیرش هستم
سایت ها رو هم بررسی کردم، همگی به اتفاق آموزش سایت زیر رو گفتن:
https://meetanshi.com/blog/send-mail-from-localhost-xampp-using-gmail/
در انتهای پست آموزشی یه قطعه کد گذاشته که مشخص بشه ارسال ایمیل، موفقیت آمیز هست یا نه
<?php
$to_email = "receipient@gmail.com";
$subject = "Simple Email Test via PHP";
$body = "Hi,nn This is test email send by PHP Script";
$headers = "From: sender\'s email";
if (mail($to_email, $subject, $body, $headers)) {
echo "Email successfully sent to $to_email...";
} else {
echo "Email sending failed...";
}
حالا من کارهای گفته شده رو انجام و پس از اجرای قطعه کد بالا با خطای emaail sending failed ... مواجه میشم، که اتفاقا یکی از کاربران هم با همین خطا مواجه شده بود و نویسنده این جواب رو بهش داده:
حالا مشکل من اینجاست که اصلا نیمتونم اکانت در Admin.google.com بسازم که بهش دسترسی بدم ...
نمیدونم مشکل از تحریم ها هست، مشکل از من هست!
میشه از هاستی که ازش دامنه خریدم؛ از اطلاعات smtp اون برای ارسال ایمیل استفاده کنم؟
برای ارسال اییمل تو لوکال هاست ایا روش دیگه ای وجود داره؟
لطفا راهنمایی کنید
با تشکر
سلام
@tamiratsg
کلا ارسال ایمیل یا از طریق توابع PHP هست
یا از طریق SMTP
اگر بخواییید SMTP بفرستید یه کتابخونه phpmailer هست نصب کنید
با اون ارسال کنید بسیار هم ساده هست
اگر بخوایید به صورت PHP ایمیل بدید که اصلا پیشنهاد نمیشه
قطعه کد زیر در اکثر جاها کاربرد داره
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <'. setting('from_email') .'>' . "\r\n";
$message = $theme_header . $body . $theme_footer;
if(mail($to,$subject,$message,$headers)) {
return true;
} else {
return false;
}
مشتکرم جناب موسوی
از smtp سرور خودم استفاده کردم، به این شکل:
تنظیمات فایل sendmail.ini:
smtp_server=mail.domain.ir
smtp_port=25
smtp_ssl=ssl
auth_username=test@domain.ir
auth_password=12415sdadsas41
و تنظیمات php.ini:
SMTP=mail.domain.ir
smtp_port=25
sendmail_path = "e:\xampp\sendmail\sendmail.exe\ -t"
تنظیمات رو به این شکل انجام دادم؛ ایمیل ارسال هم میشه ولی دریافت نمیکنم ...
به نظرتون مشکل از کجا میتونه باشه، از سمت سرور هست؟
سلام،
@Alimotreb
من طیق گفته ی شما از phpmail استفاده کردم، تنظیمات رو هم درست انجام دادم، ولی با خطای SMTP Error: Could not authenticate مواجه میشم(هم وقتی که smtp از هاست خودم رو میدم و هم وقتی که از گوگل رو میدم)
این کدهایی هست که استفاده میکنم و خطا میگیرم:
<?php
require_once ("phpmailer\class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;
$mail->Username = "tamiratsg@gmail.com";
$mail->Password = "***********";
$mail->SetFrom('myshadi@gmail.com','shadi');
$mail->FromName = "From";
$mail->AddAddress("bar@hotmail.com");
$mail->Subject = "Email Test";
$mail->Body = "<H3>Email Sent ...............</H3>";
$mail->IsHTML (true);
if (!$mail->Send())
{
echo "Error: $mail->ErrorInfo";
}
else
{
echo "Message Sent!";
}
?>
وقتی هم که اجرا میکنم که ارسال کنه با خطای Error: SMTP Error: Could not authenticate مشکل از کجا میتونه باشه؟
ممنون بابت وقتی که میذارید
سلام و درود
@tamiratsg
اول اینکه از درست قرار دادن مسیر کتابخونه مطمئن باشید
چون من دایرکتوری که ازش دارم به این شکل هست و این فایلشو اینکلود یا require میکنم
require 'class/phpmailer/PHPMailerAutoload.php';
مورد دوم اینکه
ارسال ایمیل از SMTP هاست ، با پورت 25 هست
آیپی ، پورت ، یوزر و پس!
جیمیل هم با 25 قبول میکنه
با 443 قبول میکنه
با 578 قبول میکنه ، ولی پورت اصلی 25 هست
تغییر بدید و مجدد تست کنید
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟