2009-10-07 2 views
2

Quelle serait la meilleure approche pour cela? Parce que, comme je l'ai trouvé (et cela a eu un sens, seulement après l'avoir essayé: p) que vous ne pouvez pas définir une variable PHP sur les conditions javascripts. (Duurrhh)jQuery cliquez sur l'événement pour modifier la variable de session php

La seule solution que je peux trouver est de faire un appel AJAX à un petit fichier PHP qui gère les variables de session

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

Et puis laissez l'accord session.php avec le réglage de la nouvelle variable.

Mais il se sent sorta comme un gaspillage de faire une demande complète http uniquement pour définir une variable en PHP ...

Répondre

7

Javascript (jQuery) est exécuté sur le côté client. PHP, et son mécanisme de session, est exécuté côté serveur. Donc, pour faire quoi que ce soit lié à une session PHP, vous devez aller au serveur, faire une requête HTTP complète - vous ne pouvez pas rester du côté client.

Faire une requête Ajax est une façon d'aller au serveur - fonctionne très bien ;-)
Ce que vous faites est OK (et nécessaire, en fait), si vous voulez affecter certaines données de session: vous Je n'ai pas vraiment le choix, même si c'est comme une sorte de gaspillage.

+0

que ce que je craignais. Ce n'était pas vraiment un problème, donc je suppose que ça ira ... – peirix

3

La seule autre alternative est de faire une "demande régulière" mais ce serait encore plus "gaspilleur".

Ou peut-être vous pouvez définir un cookie avec JavaScript et changer la session lorsque la requête suivante arrive (vous devez vérifier ce cookie sur chaque demande alors) ...

Questions connexes