Passer une variable JS en $_SESSION

Résolu
Tiilouli Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Tiilouli Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerai donner une de mes variable JS à la variable session. Voila ce que je fait actuellement :
<script type="text/javascript">
var jsonArr =[];


//Remplissage de mon jsonArr


<?php session_start();$_SESSION['var']= QUE DOIS RAJOUTER ;?>
console.log(jsonArr);

}
</script>

2 réponses

Utilisateur anonyme
 
Bonjour

Je suppose que tu sais que le javascript s'exécute chez le client, alors que le PHP s'exécute dans le serveur.
Ceci veut dire que la ligne
<?php session_start();$_SESSION['var']= QUE DOIS RAJOUTER ;?> 
est exécutée dans le serveur, et que là, la variable javascript n'existe pas ; elle n'existe même pas encore chez le client, puisque le script n'a pas encore été complètement envoyé.
Ça ne veut pas dire que ce que tu veux est impossible, simplement que ça se passe d'une manière très différente. Regarde les tutoriels sur AJAX qui sert justement à faire ce genre de choses.
Grosso modo, le principe est que à la place de ton <?php session_start();$_SESSION['var']= QUE DOIS RAJOUTER ;?>, tu dois appeler une fonction AJAX (en pratique, tu l'appelles en Javascript) qui va a son tour appeler un script php sur le serveur en lui envoyant ce que tu veux (ta fameuse variable par exemple). Ce script php va, lui, pouvoir enregistrer la valeur dans une variable de session et même envoyer une réponse à la fonction AJAX qui l'a appelé.
Il y a donc appel à un script php, mais ce n'est pas celui (a priori) qui contenait le javascript.
C'est très pratique et pas difficile quand on a compris le mécanisme, mais au début, ça peut surprendre.
2
Tiilouli Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Hum, ok. J'avais perdu de vu que le php s'exécute côté serveur et non client.

Je vais aller voir les tuto AJAX !

Merci de ta réponse =)
0