Symfony | Форма | почта

У меня проблема с Symfony, и я надеюсь, что вы мне поможете 🙂
Я создал форму, которая получает данные от пользователя (электронная почта, имя, сообщение), а затем сохраняет данные в базе данных. Все отлично работает, но я также хочу отправить электронное письмо с этими данными.
Я хочу использовать функцию почты mail(to,subject,message,headers,parameters);,

Мой класс контроллера выглядит так:

public function ContactFormAction(Request $request){
$post = new ContactForm();
$form = $this->createFormBuilder($post)
->setMethod('POST')
->add('email','text',['label' => 'Adres e-mail'])
->add('name','text', ['label' => 'Imię'])
->add('message','text', ['label' => 'Wiadomość'])
->add('save','submit', ['label' => 'Wyślij'])
->getForm();$form->handleRequest($request);
if ($form->isSubmitted()) {
$post = $form->getData();
$em = $this->getDoctrine()->getManager();
$em->persist($post);
$em->flush();
$message=''; //thats my problem
mail('example@example.pl', 'Subject', $message);

return $this->redirectToRoute('onas');
}

return $this->render('default/aboutus.html.twig', ['form' => $form->createView()]);
}

Моя проблема: как должна выглядеть переменная $ message, если я хочу получить эти данные от пользователя (из формы на моей веб-странице).

Большое спасибо за все ваши ответы 🙂

0

Решение

Не уверен, что я следую, но, вы хотите отправить простой текст, используя ввод пользователя, просто сделайте $message = $post->getMessage(); и передать его mail, Это проблема?

Электронная почта по умолчанию отправляется в text/plain кодирование, так что вы не сможете использовать HTML, Лично я предпочитаю форматировать его немного лучше, чем старый текст. Чтобы достичь этого, я обычно создаю Twig шаблон, передать ему входные данные и сделать то, что мне нужно. Этот шаблон может содержать некоторый HTML, который может улучшить внешний вид электронного письма.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector