[PHP] forcer actualisation après "page précédente" sur navigateur ?

forcer actualisation après "page précédente" sur navigateur ? [PHP] - PHP - Programmation

Marsh Posté le 10-06-2009 à 12:19:10    

Bonjour à tous
 
Je n'arrive pas à trouver si ce que je cherche à faire est possible... J'ai cherché partout sur google, sans succès.  
 
Je vous explique le principe. J'ai une page avec une liste de produits qui s'affichent. Si l'internaute s'est identifié (login/mot de passe, session_start()), à chaque produit, un petit message s'affiche pour dire en gros "vous avez déjà mis le produit en panier" ou "vous ne l'avez pas encore" selon ce qu'il a en panier. Quand il navigue, l'internaute clique sur un lien pour mettre le produit en panier, puis clique sur le "page précédente" du navigateur, pour voir s'il veut un autre produit de la liste.
 
Le problème, c'est que lorsqu'il clique sur "page précédente", l'information ne s'actualise pas : la page affiche toujours "vous ne l'avez pas encore", même s'il vient de le faire, la requête qui va vérifier si le produit est ou non dans le panier n'est pas relancée.
 
Je me suis donc dit qu'il fallait trouver un moyen pour forcer l'actualisation de la page. J'ai essayé avec :
 

Code :
  1. <META http-equiv="Cache-Control" content="no-cache">
  2. <META http-equiv="Pragma" content="no-cache">
  3. <META http-equiv="Expires" content="0">


 
et avec  

Code :
  1. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
  2. header("Cache-Control: no-cache, must-revalidate" );
  3. header("Pragma: no-cache" );


 
Ca ne marche pas. Je pense que quand qu'on clique sur le bouton "page précédente" du navigateur, ça n'a aucun effet, l'actualisation ne se fait pas. (d'ailleurs, on dirait aussi que, dans ces cas-là, récupérer l'url de la page d'où il vient avec $_SERVER["HTTP_REFERER"] ne marche pas non plus).
 
Ma question est donc : existe-t-il un moyen de forcer l'actualisation de la page lorsque l'internaute y retourne parce qu'il a cliqué sur le "page précédente" du navigateur ?
 
Merci par avance à tous ceux qui auront une info !!!

Reply

Marsh Posté le 10-06-2009 à 12:19:10   

Reply

Marsh Posté le 10-06-2009 à 12:40:24    

fabfabfabfab a écrit :

Ma question est donc : existe-t-il un moyen de forcer l'actualisation de la page lorsque l'internaute y retourne parce qu'il a cliqué sur le "page précédente" du navigateur ?


Non. Tout simplement parce-que nombre de navigateurs modernes décident de ne pas recharger la page (et de simplement l'afficher du cache) afin de rendre l'affichage de la page précédente plus rapide. C'est fait exprès et il serait donc un peu con de fournir un hook pour le désactiver.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 10-06-2009 à 12:51:50    

Je m'absente deux ans, et je me rends compte que les questions n'ont pas bcp changé. :D
 
Sinon, +1 pas possible et pas souhaité.


---------------
Expert en expertises
Reply

Marsh Posté le 10-06-2009 à 13:32:17    

Ben oui, c'est ça quand on découvre encore, on pose des questions qui semblent bateau et naïves aux plus confirmés. Allez, avec un peu de chance et surtout du travail, bientôt, je saurai répondre aux questions bateau moi aussi ! :D
 
En tout cas, voilà qui explique pourquoi je ne trouvais rien... je commençais me poser des questions, et j'ai maintenant une double confirmation, merci à tous les deux !
Ma raison me paraissait louable, pourtant, je cherchais à le faire pour que certains internautes peu réguliers ne se disent pas que la mise en panier n'a pas marché ou quelque chose comme ça, mais tant pis ! La rapidité est un élément essentiel sur le web et je ne vais pas le reprocher aux navigateurs !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed