تالار گفتمان nCIS.ir

نسخه‌ی کامل: مشکل ارسال ایمیل در فرم تماس باما کجاست؟ (حل شد)
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام
برای ازسال ایمیل از قسمت تماس با ما yii2 در کانفیگ web.php  کامپوننت miller  را بدین صورت تنظیم کردم

'mailer' => [
           'class' => 'yiiswiftmailerMailer',
'viewPath' => '/mail',
'useFileTransport' => false,
'transport' => [
 'class' => 'Swift_SmtpTransport',
 'host' => 'smtp.gmail.com',
 'username' => 'sh...@gmail.com',
 'password' => '....',
 'port' => '465'
 'encryption' =>'ssl',
 ],
       ],


خطا داد
ReflectionException
Class Swift_Transport_Esmtp_Auth_CramMd5Authenticator does not exist

با یاهو هم تنظیم کردم همین خطا رو داد اشکال کجاست ؟
'mailer' => [
           'class' => 'yiiswiftmailerMailer',
           'viewPath' => '/mail',
'useFileTransport' => false,
'transport' => [
 'class' => 'Swift_SmtpTransport',
 'host' => 'smtp.mail.yahoo.com',
 'username' => 'sh...@yahoo.com',
 'password' => '....',
 'port' => '465',
 'encryption' =>'ssl', 
 ],
       ], 
چک کردین پروژه کامل ایجاد شده باشه و تمام کلاسها موجود باشن؟ همین کلاس رو توی مسیر زیر قرار داره:
vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php

ولی گویا Autoload درست کار نمیکنه و نمیتونه _ رو به / تبدیل کنه و برای همین کلاس پیدا نمیشه.
ممنون فایلها رو باید rename میکردم تا پیدا میکرد اون قسمت درست شد حالا برای یاهو خطای زیرو میده
Swift_TransportException
Expected response code 250 but got code "553", with message "553 From address not verified - see http://help.yahoo.com/l/us/yahoo/mail/or...om-07.html

وبرای جیمیل هم مشابه همین :

Swift_TransportException
Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted. Learn more at
535 5.7.8 https://support.google.com/mail/answer/14257 jf3sm37609491wjb.41 - gsmtp


مگر نباید یوزر نیم وپسوردی که با آن وارد میل یاهو میشویم را بدهیم ؟ ویا نه باید یوزر ویژه ای داشته باشیم تا این قابلیت را به ما بدهد ؟
سرویس SMTP یاهو رایگان نیست. درمورد جیمیل هم احتمالاً پورت رو اشتباه میزنید. دقت کنید که گوگل از STARTTLS و پورت 587 استفاده میکنه.
این باید فعال میشد


Google's less secure enable

https://www.google.com/settings/security/lesssecureapps


وکدی که در نهایت استفاده کردم
'mailer' => [
            'class' => 'yiiswiftmailerMailer',
           
			'viewPath' => '/mail',
			'useFileTransport' => false,
			'transport' => [
				'class' => 'Swift_SmtpTransport',
				'host' => 'smtp.gmail.com',
				
				'username' => 'sh...@gmail.com',
				'password' => '....',
				'port' => '465',
				'encryption' =>'ssl',
				
			],
        ],