1 pièce(s) jointe(s)
Récupérer dans mon controller mes mails cochés
Bonjour à tous,
je suis sous symfony4.4
Je suis sur un envoie de convocations a des membres d'une équipe. Je sélectionne avec des checkbox les membres a qui je désire envoyer la convocation.
J'utilise Mailer.
Pièce jointe 585361
Mon formType:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
...
->add('emailTo',EntityType::class, [
// Multiple selection allowed
'multiple' => true,
// Render as checkboxes
'expanded' => true,
// This field shows all the categories
'class' => Adherent::class,
'choice_label' => 'email',
'mapped' => false,
'choice_attr' => function() {
return ['checked' => 'checked'];
},
])
... |
La ou je bloque c'est que je voudrai dans mon controller récupérer seulement les adresses mail cochées:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
...
$formcontact = $this->createForm(ConvocationType::class);
$contact = $formcontact->handleRequest($request);
if($formcontact->isSubmitted() && $formcontact->isValid()){
foreach ($contact->get('emailTo')->getData() as $c) {
$emails[]= $c;
}
$email = (new TemplatedEmail())
->from($contact->get('email')->getData())
->to(...$emails)
->subject('contact')
->htmlTemplate('emails/convocation_match.html.twig')
->context([
'catadherent' =>$catadherent,
'mail' => $contact->get('email')->getData(),
'mailTo'=>$contact->get('emailTo')->getData(),
'team'=> $contact->get('team')->getData(),
'convocation_date'=>$contact->get('convocation_date')->getData(),
'club_adverse'=>$contact->get('club_adverse')->getData(),
'rendez_vous_date'=>$contact->get('rendez_vous_date')->getData(),
'lieu'=>$contact->get('lieu')->getData(),
'match_date'=>$contact->get('match_date')->getData(),
'stade'=>$contact->get('stade')->getData(),
]);
$mailer->send($email);
$this->AddFlash(
'success',
"Votre email a bien été envoyé !"
);
}
... |
J'ai cette erreur:
Code:
1 2
|
An address can be an instance of Address or a string ("App\Entity\Adherent") given). |
Comment est ce que je peux faire pour récupérer mes mails?
Merci d'avance pour votre aide.