TP : Formulaire de contact

Résumé Support

Maintenant que l'on a vu les concepts de base je vous propose d'attaquer un premier cas pratique : un formulaire de contact.

Composant mailer

Pour ce TP vous aurez besoin d'utiliser le composant Mailer. Pour tester l'envoi des emails en local vous pouvez utiliser un de ces outils :

  • Mailpit, disponible sous forme de simple exécutable.
  • Maildev, disponible sous forme d'image docker.
  • Mailtrap qui est un service tiers avec une formule gratuite limitée à 100 emails / mois

Ensuite on modifiera le fichier d'environnement pour ce câbler au serveur SMTP choisi.

MAILER_DSN=smtp://localhost:1025

Et on va modifier la configuration messenger.yaml pour que l'envoi des emails se fasse de manière synchrone.

framework: messenger: failure_transport: failed transports: async: dsn: '%env(MESSENGER_TRANSPORT_DSN)%' options: use_notify: true check_delayed_interval: 60000 retry_strategy: max_retries: 3 multiplier: 2 failed: 'doctrine://default?queue_name=failed' sync: 'sync://' routing: Symfony\Component\Mailer\Messenger\SendEmailMessage: sync Symfony\Component\Notifier\Message\ChatMessage: sync Symfony\Component\Notifier\Message\SmsMessage: sync

Pour le reste, je vous laisse découvrir le composant et essayer de créer le formulaire de contact par vous même.

Liens utiles