@MaikMain
Начинающий backend - developer

Как передать полученные значения в сообщение. Yii2?

Добрый день. У меня есть форма обратной связи из коробки Yii2 advanced.
Письмо успешно отправляется. Но есть проблема, не знаю как эти данные передать в сам файл сообщения, который находится (common/mail/contact.php)

Контроллер:
spoiler
public function actionContact()
    {
        /* Создаем экземпляр класса */
        $model = new ContactForm();
        /* получаем данные из формы и запускаем функцию отправки contact, если все хорошо, выводим сообщение об удачной отправке сообщения на почту */
        if ($model->load(Yii::$app->request->post()) && $model->contact(Yii::$app->params['emailto'])) {
            Yii::$app->session->setFlash('contactFormSubmitted');
            return $this->refresh();
            /* иначе выводим форму обратной связи */
        } else {
            return $this->render('contact', [
                'model' => $model,
            ]);
        }
    }


Модель:
spoiler
public function contact($emailto)
    {
        /* Проверяем форму на валидацию */
        if ($this->validate()) {
            Yii::$app->mailer->compose('contact')
                ->setFrom([Yii::$app->params['adminEmail'] => $this->name]) /* от кого */
                ->setTo($emailto) /* куда */
                ->setSubject($this->subject) /* имя отправителя */
                ->setTextBody($this->body) /* текст сообщения */
                ->send(); /* функция отправки письма */
            return true;
        } else {
            return false;
        }
    }


Подскажите как мне передать данные, полученные от пользователя (Имя, емайл, телефон, тема, текст) в этот в этот файл common/mail/contact.php
И в нем просто списком перечислить эти данные?

За ранее большое спасибо
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
https://www.yiiframework.com/extension/yiisoft/yii...
Yii::$app->mailer
              ->compose('contact', [
                   'someVarName' => $someData,
                   'someModel' => $this,
                   'currentUser' => Yii::$app->user->identity,
                   'mySuperVar' => 'да это она, дайте две'
              ])
...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы