Récupération du poste avec Symfony

Par Frédouze, il y a 5 ans


Bonjour à tout, je fait un petit contrôleur pour récupérer des information en post, ici une date et les enregistrer en session. mais visiblement ça trouve pas mais donné en url. J'ai du oublier un petit truc.

Voici mon contrôleur

<?php // src/Controller/FormController.php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Annotation\Route; use Symfony\Component\HttpFoundation\Session\Session; class DateController extends AbstractController { /** * @Route("/date", name="date") */ public function new(Request $request) { $session = $request -> getSession(); $mois = $session -> get('mois', [] ); $session->set('mois',$mois); return $this->render('operation/date.html.twig',[]); } }

Voici ma vue

{% extends 'base.html.twig' %} {% block title %}Hello EnrController!{% endblock %} {% block body %} {% set mois = 23/02 %} <div class="col-12 grid-margin stretch-card"> <div class="card"> <div class="card-body"> <h4 class="card-title">Basic form elements</h4> <p class="card-description"> Basic form elements </p> <a href="{{ path('date', { 'mois': mois }) }}" class="btn btn-primary">Accueil</a> </div> </div> </div> {% endblock %}

4 réponses

TuxBoyBzh, il y a 5 ans

Tu ne decrait pas réucpérer ta valeur "mois" en paramètre ?

/** * @Route("/date/{mois}", name="date") */ public function new(string $mois, Request $request) { $session->getSession()->set('mois',$mois); return $this->render('operation/date.html.twig',[]); }

Au moment ou tu essaue de récuéprer ta valeur, ta session est vide ? ou je n'ai pas tout

Grafikart, il y a 5 ans

Donne un minimum d'indication car là ce n'est pas clair comme probleme

Frédouze, il y a 5 ans

J'ai modifier mon controleur comme ci dessous et j'ai la date en session.
$session = $request -> getSession();
$mois = $request->query->get('mois');
$annee = $request->query->get('annee');
$date = ''.$annee.'-'.$mois.'';
$session->set('mois',$date);

TuxBoyBzh, il y a 5 ans

Oui aussi, ton problème est résolu du coup ?