je veux enregistrer apres incristion du membre les info du membre dans une table de parrainage. j'ai donc ecrire un listener. Le probleme c'est rien ne ce passe. j'e viens demander de l'aide voici mes codes
<?php
/**
* Created by PhpStorm.
* User: BAKARY236
* Date: 16/08/2018
* Time: 11:14
*/
namespace CmcBundle\Services;
use CmcBundle\Entity\VisiteurInscrit;
use Symfony\Component\DependencyInjection\ContainerInterface;
class AjouterVisiteurInscrit
{
public function __construct(ContainerInterface $container, $session)
{
$this->entityManager = $container->get('doctrine.orm.entity_manager');
$this->session = $session;
}
public function ajouterMembreParrainer()
{
$email = $this->session->get('email');
$visiteur = $this->session->get('membreinscrit');
$emailok = $this->entityManager->getRepository('CmcBundle:User')->findBy(array('email' => $email));
if (!$emailok)
{
return;
}
if ($emailok)
{
$parrain = new VisiteurInscrit();
$parrain->setVisiteur($visiteur);
$parrain->setDateInscription(new \DateTime('%d'));
$this->entityManager->persit($parrain);
$this->entityManager->flush();
}
}
}
<?php
namespace CmcBundle\ServicesListener;
use Symfony\Component\DependencyInjection\ContainerInterface;
class AjouterVisiteurInscritListener
{
public function __construct(ContainerInterface $container)
{
$this->router = $container->get('router');
$this->membreInscrit = $container->get('cmc.services.ajouter_visiteur_inscrit');
}
public function onKernelRequest()
{
$route = $this->router;
if ($route == 'check-email')
{
$this->membreInscrit->ajouterMembreParrainer();
}
}
}
Je ne vois pas où il y a écoute d'un événement Symfony.
Il faut déclarer un service avec un un événement styme post_update ou pre_update.
A+
Ecouteur d'évènement
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.