Forcer le rafraichissement d'une page

Eléphant du PHP | 124 Messages

27 oct. 2006, 20:02

Bonjour,

Est-il possible de faire en sorte qu'au chargement d'une page, un petit script rafraichi (F5) automatique la page (pour réactuliser les caches) ?

Merci
Modifié en dernier par neo765 le 29 mai 2008, 23:26, modifié 1 fois.

Mammouth du PHP | 19672 Messages

28 oct. 2006, 03:44

En JavaScript oui, pas en PHP puisque PHP n'est exécuté que coté serveur. Tu devrais faire une recherche sur le forum, cette question est régulièrement posée et la solution a déjà été donnée.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 124 Messages

28 oct. 2006, 23:58

Salut,

Merci de ta réponse

J'ai pas mal cherché sur ce forum et sur google et je n'ai rien trouvé bien que sur google la question est pas mal possée mais jamais répondu.

Merci
Modifié en dernier par neo765 le 29 mai 2008, 23:26, modifié 1 fois.

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

29 oct. 2006, 10:43

en Javascript, regarde du côté de window.location.replace()
en HTML, tu peux utiliser la balise <meta> option "refresh".

Mammouth du PHP | 19672 Messages

29 oct. 2006, 10:59

Pas une bonne idée ça, sinon la page va se recharger en permanence. Le refresh est correct si on charge une autre page, mais si on recharge la même, l'instruction de rechargement sera à nouveau exécutée.... ça peut durer très longtemps.

Si c'est pour forcer le rechargement du contenu à chaque nouvelle visite, regarde du coté de la balise

Code : Tout sélectionner

<meta name="Pragma" content="no-cache" />
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

29 oct. 2006, 11:05

la page va se recharger en permanence.
Et si la page est un peu lourde, le serveur tombe ! :langue: :twisted:

Eléphant du PHP | 124 Messages

29 oct. 2006, 13:13

Salut,

J'ai ajouté ça :

Code : Tout sélectionner

<?php // Resolve IE bug ; more efficient than metas header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Fri, Jan 01 1900 00:00:00 GMT"); // Past date header("Pragma: no-cache"); ?> <head> <title>Titre de la page</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Pragma" content="no-cache" /> </head> <body> </body>
C'est bon vous pensez ?

Merci
Modifié en dernier par neo765 le 29 mai 2008, 23:27, modifié 3 fois.

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

29 oct. 2006, 13:20

Comme toutes les balises <meta>, elle trouve sa place dans la partie <head> de ta page.

Donc, après les header... ;)

Eléphant du PHP | 124 Messages

29 oct. 2006, 13:25

Oui, je me suis rendu compte de ma question con*e

J'ai édité mon message
Modifié en dernier par neo765 le 29 mai 2008, 23:27, modifié 1 fois.

Eléphant du PHP | 124 Messages

29 oct. 2006, 17:12

Salut

Vous pouvez me dire si mon code tient la route ?

Le code devrait être opérationnel immédiatement il faut attendre qu'il supprime le cache ?

Merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

29 oct. 2006, 19:55

Selon moi il tient la route (de toute façon si tu regardes sur le forum, c'est le même qu'on retrouve partout). Il est normalement à effet immédiat et devrait forcer le navigateur à toujours venir chercher la page sur le serveur.

Nota : il s'agit bien de la page, pas nécessaire des images qui pourraient y figurer...

Sinon, histoire d'en rajouter un dernier, personnellement je colle également ce header ci :
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
pour dire au navigateur qu'il tombe bien, je viens justement de modifier ma page à l'instant et qu'il peut profiter de ce qu'il est là pour repartir avec ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...