use App\Entity\User; use App\Form\RegistrationType; use Docrine\ORM\EntityManagerInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface; class SecurityController extends Controller { /** * @Route("/register", name="register") */ public function register( Request $request, EntityManagerInterface $manager, UserPasswordEncoderInterface $encoder ) { $user = new User(); $form = $this->createForm(RegistrationType::class, $user); $form->handleRequest($request); if($form->isSubmitted() && $form->isValid()) { $hash = $encoder->encodePassword($user, $user->getPassword()); $user->setPassword($hash); $manager->persist($user); $manager->flush(); return $this->redirectToRoute('login'); } return $this->render("security/register.html.twig", [ 'form' => $form->createView() ]); } /** * @Route("/login", name="login") */ public function login() { return $this->render("security/login.html.twig"); } /** * @Route("/logout", name="logout") */ public function logout() { // Cette fonction ne fait rien. // Elle est là juste pour que la route "logout" existe. } }