src/Controller/ContactController.php line 19

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Form\ContactType;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\Mailer\Exception\TransportExceptionInterface;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\Mime\Email;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. use Symfony\Component\Mailer\MailerInterface;
  10. use Symfony\Component\Mailer\Mailer;
  11. class ContactController extends AbstractController
  12. {
  13.     /**
  14.      * @Route("/contact", name="app_contact")
  15.      */
  16.     public function index(Request $requestMailerInterface $mailer)
  17.     {
  18.         $form $this->createForm(ContactType::class);
  19.         $form->handleRequest($request);
  20.         if($form->isSubmitted() && $form->isValid()) {
  21.             $contactFormData $form->getData();
  22.             //$transport = new SendmailTransport(); 
  23.             $message = (new Email())
  24.                 ->from($contactFormData['email'])
  25.                 ->to('your@mail.com')
  26.                 ->subject('You got mail')
  27.                 ->text($contactFormData['message']);
  28.             $mailer->send($message);
  29.             $this->addFlash('success''Your message has been sent');
  30.             return $this->redirectToRoute('app_sent');
  31.         }
  32.         return $this->render('contact/index.html.twig', [
  33.             'our_form' => $form->createView()
  34.         ]);
  35.     }
  36.      /**
  37.      * @Route("/sent", name="app_sent")
  38.      */
  39.     public function EmailSent()
  40.     {
  41.         return $this->render('contact/sent.html.twig', [
  42.             'controller_name' => 'ContactController',
  43.         ]);
  44.     }
  45.     
  46. }