Modifier mon URL à partir de ma requête
Bonjour,
J'ai une requête ajax GET comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10
| let donnee = {
'start' : arg.start,
'end' : arg.end,
}
$.ajax({
type: 'GET',
url: '/test',
data: {donnees: JSON.stringify(donnee)},
dataType: 'donnees'
}) |
qui envoie mes donnes à mon controller ('/test').
Jusqu'à la aucun souci tout fonctionne très bien.
Ce que je souhaiterais maintenant, c'est intégrer dans l'URL de ma page de manière asyncrhone, les données reçu vai la rêquete ($_GET['donnees']).
En effet, étant donnée que la return de ma fonction s'effectue sur la même page, l'URL n'est pas modifié directement alors que j'ai besoin des informations qui y sont contenus dans la requête pour entrer dans mes conditions et lire mes instructions.
Lorsque je clique sur le resultat de ma requête je vois bien que celle-ci a été envoyé, et ma page est rechargée de la bonne manière avec les données dans l'URL.
l'Objectif : J'aimerais que l'URL soit modifié directement à l'envoie de la requête ajax sans devoir passer par le click sur le résultat de la requête ou un rechargement de la page
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 40 41 42 43
| /**
* @Route("/test", name="test", methods={"GET", "POST"})
*/
public function index(?Calendar $calendarr, CalendarRepository $calendary, Request $request, $_route): Response
{
// $request = json_decode($request->getContent());
// $referer = (string) $request->headers->get('referer'); // get the referer, it can be empty!
// $refererPathInfo = Request::create($referer)->getPathInfo();
// $routeInfos = $this->router->match($refererPathInfo);
// dd($request);
$query = $this->entityManager->createQuery(
'SELECT c
FROM App:Calendar c
WHERE c.title != :title
ORDER BY c.title ASC'
)->setParameter('title', 'indisponible');
$calendar = $query->getResult();
$calendars = new Calendar;
$form = $this->createForm(CalendarType::class, $calendars);
$calendrier = $calendary->findAll();
$code="";//initialisation
$codeSelect='';//initialisation
if (isset($_GET['donnees'])){
// dd('test');
/** Je met ma requête ajax(GET) dans une variable :
* Etant donnée qu'ell est en string() je délimite la bout concernant a START
* Et le bout concernant END
*/
$url = $_GET['donnees'];
$urlStart = substr($url,10,24);
$urlEnd = substr($url,43,-2); |