Уведомление на почту

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
fname_lname
Сообщения: 17
Зарегистрирован: 2018.03.15, 12:22

Уведомление на почту

Сообщение fname_lname » 2019.11.09, 08:29

У меня на сайте организована система заявок: клиент заполняет форму заявки и отправляет на сервер(фио, номер кабинета и текст, все больше никаких полей нет). Как сделать так, чтобы каждый раз когда клиент отправляет заявку, то мне на почту приходило уведомление о том что поступила новая заявка?
в конфиге у меня настроено так:

Код: Выделить всё

'mailer' => [
            'class' => 'yii\swiftmailer\Mailer',
            // send all mails to a file by default. You have to set
            // 'useFileTransport' to false and configure a transport
            // for the mailer to send real emails.
            'useFileTransport' => false,
			'transport' => [
				'class' => 'Swift_SmtpTransport',
				'host' => 'smtp.google.com',
				'username' => 'моя почта',
				'password' => 'мой пароль',
				'port' => '465',
				'encryption' => 'ssl',
			],
		
        ],
а вот контроллер:

Код: Выделить всё

 public function actionIndex()
    {
		$requests = new Requests();
        if ($requests->load(Yii::$app->request->post())) {
            
            if ($requests->save()) {
				Yii::$app->session->setFlash('success', 'Ваша заявка на техническое обслуживание принята');
				/*Yii::$app->mailer->compose()
				->setTo(Yii::$app->params['adminEmail'])
                ->setFrom('????')
                
                ->setSubject('новая заявка')
                ->send();
				*/
                return $this->render('ok');
            } else {
                Yii::$app->session->setFlash('error', 'Ошибка');
            }
        }
        return $this->render('index', compact('requests'));
    }
я так понимаю ничего не будет работать, если не настроить метод setFrom(). Как тогда сделать, если в форме заявок email не требуется?

yiiliveext
Сообщения: 507
Зарегистрирован: 2019.08.13, 01:49

Re: Уведомление на почту

Сообщение yiiliveext » 2019.11.09, 11:50

Почту c 'username' => 'моя почта', указываете

fname_lname
Сообщения: 17
Зарегистрирован: 2018.03.15, 12:22

Re: Уведомление на почту

Сообщение fname_lname » 2019.11.11, 08:12

username там все правильно указано. я и порт менял. Ошибка Swift_TransportException.
Connection could not be established with host

fname_lname
Сообщения: 17
Зарегистрирован: 2018.03.15, 12:22

Re: Уведомление на почту

Сообщение fname_lname » 2019.11.11, 08:45

Может это из-за того что у меня веб-сервер на IIS ?

yiiliveext
Сообщения: 507
Зарегистрирован: 2019.08.13, 01:49

Re: Уведомление на почту

Сообщение yiiliveext » 2019.11.11, 11:11

исправьте в конфиге

Код: Выделить всё

'port' => '587',
'encryption' => 'tls',

fname_lname
Сообщения: 17
Зарегистрирован: 2018.03.15, 12:22

Re: Уведомление на почту

Сообщение fname_lname » 2019.11.11, 12:38

исправил. проблема не решилась

unknownby
Сообщения: 34
Зарегистрирован: 2019.11.05, 16:34

Re: Уведомление на почту

Сообщение unknownby » 2019.11.11, 12:51

smtp google

Код: Выделить всё

'host' => 'smtp.gmail.com',

Ответить