src/Controller/ContactController.php line 25

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Contact;
  4. use App\Form\Type\ContactType;
  5. use Doctrine\ORM\EntityManagerInterface;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. class ContactController extends AbstractController
  11. {
  12.     private EntityManagerInterface $entityManager;
  13.     public function __construct(EntityManagerInterface $entityManager)
  14.     {
  15.         $this->entityManager $entityManager;
  16.     }
  17.     /**
  18.      * @Route("/contact", name="contact")
  19.      */
  20.     public function contact(Request $request): Response
  21.     {
  22.         $contact = new Contact();
  23.         $form $this->createForm(ContactType::class, $contact);
  24.         $form->handleRequest($request);
  25.         if ($form->isSubmitted() && $form->isValid()) {
  26.             $contact $form->getData();
  27.             // Persist contact message
  28.             $this->entityManager->persist($contact);
  29.             $this->entityManager->flush();
  30.             $this->addFlash('success''Message envoyé !');
  31.             return $this->redirectToRoute('contact');
  32.         }
  33.         return $this->render('contact/contact.html.twig', [
  34.             'controller_name' => 'ContactController',
  35.             'active_menu' => 'contact',
  36.             'form' => $form->createView()
  37.         ]);
  38.     }
  39. }