2 votes

Événement de clic jQuery pour changer la variable de session php

Quelle serait la meilleure approche à adopter ?

Parce que, comme je l'ai constaté (et c'est tout à fait logique, seulement après l'avoir essayé :p) que vous ne pouvez pas définir une variable PHP sur les conditions de javascripts. (duurrhh)

La seule solution que j'ai trouvée est de faire un appel AJAX vers un petit fichier PHP qui gère les variables de session.

elm.click(function() {
   $.post("session.php", { "hints":"off" });
   turnOffHints();
}

Et ensuite laisser le session.php s'occuper de la mise en place de la nouvelle variable.

Mais c'est un peu un gaspillage de faire une requête http complète seulement pour définir une variable en PHP...

7voto

Pascal MARTIN Points 195780

Javascript (jQuery) est exécuté du côté client.

PHP, et son mécanisme de session, est exécuté du côté du serveur.

Donc, pour faire tout ce qui concerne une session PHP, vous devez aller sur le serveur en effectuant une requête HTTP complète - vous ne pouvez pas rester du côté du client.

Faire une requête Ajax est une façon d'aller sur le serveur -- cela fonctionne bien ;-)
Ce que vous faites est bien. (et nécessaire, en fait) si vous voulez affecter certaines données de session : vous n'avez pas vraiment le choix, même si cela ressemble à une sorte de gaspillage.

3voto

Jan Hančič Points 19496

La seule autre possibilité est de faire une "demande régulière", mais cela serait encore plus "inutile".

Ou peut-être pourriez-vous définir un cookie avec JavaScript et changer la session lors de la prochaine demande (vous devriez alors vérifier ce cookie à chaque demande) ...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X