Bonjour,

Le scénario est que je lance une requête ajax. Dans la fonction appelée, je définis des variables de session, puis renvoie la valeur vraie à ajax pour me rediriger vers une autre page où je veux afficher les valeurs de session,
Requête ajax:
Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
$.ajax({
   method: 'POST',
   url: '/setvariable',
   headers: {
       'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    },
    data: { _token : $('input[name=_token]').val() },
    dataType: "json"
})
.done(function(data) {
    window.location.replace('urlnewpage');
}
Fonction PHP (ajax):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public function setvariable(Request $request){
     $request->session()->put('keyak', 'value');
     return [
	'response' => true
        'mavar' =>$request->session()->get('keyak', 'default') //c'est bien 'value'
     ];
}
Fonction PHP (nouveau url)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
public function mynewurl(Request $request){
    dd( $request->session()->get('keyak', 'default') );   // il affiche toujours 'default' alors que je cherche qu'il m'affiche 'value'
}
Le problème est que ma nouvelle variable de session n'a pas été sauvegardée, et si j'essaie de l'afficher dans la fonction ajax avant de l'envoyer à ajax, j'obtiens des valeurs de session.

j'ai essayé aussi de le faire fonctionner avec session(['keyak' => 'value']); et session('keyak', 'default') sans succès
Merci en avance pour vos aides.