JeuWeb - Crée ton jeu par navigateur
Variables non reconsidérées après redirection. - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Variables non reconsidérées après redirection. (/showthread.php?tid=1019)



Variables non reconsidérées après redirection. - Zack - 21-12-2010

Bonjour,

Mon titre n'est surement pas très explicite, mais j'ai un problème avec mes variables lorsqu'un script redirige sur mon index.

J'explique :

Dans mon jeu, j'ai un index à l'intérieur duquel j'inclue la page demandé. Dans cet index, j'ai plusieurs fonctions qui sont appelées au tout début de l'index avant tout code html.
Ces fonctions modifient des variables ou font appels à la BDD.

Mais pour certains joueurs, c'est comme si la fonction n'avait pas été lancée ou que la variable n'avait pas été mise à jour.
Dans mon cas, c'est après un combat. Lorsque le joueur est en combat et qu'il gagne (Ou perd), il doit cliquer sur un bouton de retour. Ce bouton de retour renvoi vers un fichier qui contient un header('location:../');.
Ce header renvoi vers l'index avec la page demandé.

Mais j'ai l'impression qu'il ne recharge pas entièrement l'index. (Enfin pour moi ça fonctionne bien, mais pour certains joueurs, des variables ne sont pas entièrement actualisées).

Du coup, je me demandais si ce problème là était possible ? (L'impression qu'il ne recharge pas tout).
Est ce que je dois ajouter un header qui vide le cache ? Pourtant ce sont des variables serveur.
Ou alors, c'est moi qui ait rien compris ?

Du coup, je suis un peu perdu.


RE: Variables non reconsidérées après redirection. - niahoo - 21-12-2010

Étrange.

Bon, si c'est qu'un problème de cache, tu peux le neutraliser en faisant

header('location: index.php?t='.time());

ainsi, l'url change toutes les secondes et le navigateur n'a pas dans son cache de données correspondant à chaque url
(ça fonctionne très bien pour les images qui doivent être rechargées systématiquement)


RE: Variables non reconsidérées après redirection. - php_addict - 21-12-2010

ou avec les headesr:


header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

et meta html:


<meta http-equiv="pragma" content="no-cache">

en principe les navigateurs en tiennent compte mais peut être pas tous, à méditer...


RE: Variables non reconsidérées après redirection. - Zack - 21-12-2010

Merci pour les réponses !

Mais du coup, en faisant ça, toutes les images mises en cache seront rechargées, non ?
C'est ça aussi qui me fait le plus peur, car il y a tout de même beaucoup d'images à charger.


RE: Variables non reconsidérées après redirection. - Jeckel - 21-12-2010

Non, les entêtes ne concernent que le "fichier" en cours, en l'occurance, la page web, les fichiers liés (images, CSS, JS) ne sont normalement pas impactés


RE: Variables non reconsidérées après redirection. - Zack - 21-12-2010

Ah d'accord, merci. J'vais tester ça alors.