Version complète: sur le forum Webmaster Hub : Actualisation d'image
Webmaster Hub > Création et exploitation de Sites Internet > Les fondations d'un site
furious Gontran
Salut,

J'ais fais un code ou l'utilisateur entre des données dans la base.
Il y entre aussi une image.

Pour creer un apercu des données qu'il rentre je le fais passer par une page intermediaire.

L'image qui est envoyée est copié sous forme temporaire et possede toujours le meme nom afin que la nouvelle image temp ecrase l'ancienne et qu'ainsi je n'ais pas pleins de fichiers temporaires.

Cependant, lorsque je teste ma page celle ci m'affiche toujours l'ancienne image temporaire, alors que la copie s'est bien effectué et que l'image designé (j'ais vu ca dans les proprietes) m'indique bien le chemin de la nouvelle.

En gros, mon image change sur mon disque mais pas sur ma page ce qui est genant...

Une fois mes scripts sur le serveur est ce que j'aurais le meme probleme ?
Existe t'il un moyen d'actualiser par php cette image pour que ce soit la derniere copiée qui apparaisse ??
bigornot
Hum...

Peut-etre que l'image est restée dans le cache ?

dans ce cas, le meta :

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">

devrait te servir
furious Gontran
Ok mais juste un peu plus precisement ?

Comment je fais ?
Thanh
Lu,

Les balises meta se mettent entre les balises <head> et </head> de ta page smile.gif
furious Gontran
huh.gif
CITATION
<html>
<head>

<title>Ajout Dans La Base</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
</head>


Voici la source...
Ben ca marche pas.

C'est un script qui s'apelle lui meme cela pose t'il un probleme ?
Thanh
Par PHP,

ajoute ceci tout en haut de la page:

CODE
    header("Pragma: no-cache");
    header("Expires: 0");
    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    header("Cache-Control: no-cache, must-revalidate");


^_^
furious Gontran
Merci, je vais essayer. smile.gif

Est ce que tu aurais une adresse de tutorial la dessus ?

Pasque maintenant t'en qu'a faire je vais essayer de comprendre tongue.gif

-------

Heu ben je les ais mis tout en haut de ma page:
CITATION
header("Pragma: no-cache");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");

<html>
<head>
<title>Ajout Dans La Base</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
</head>


puis j'ais essayé dans le head...

Mais ca marche po plus...
:gueule:
Titag
Salut,

Tu devrais vider le cache de ton navigateur afin de confirmer l'origine de ton problème...

Sous IE : Menu Outils -> Options Internet => Supprimer les fichiers (§ Fichiers Internet temporaires)

Sous Firefox : Menu Outils -> Options -> Vider le cache (§ vie privée)
furious Gontran
Oui, mais le probleme reste le meme.
Ca marche la premiere fois, mais ensuite le cache se remplis et il me sors toujours l'image du cache a la place de la nouvelle.

C'est lourd...
Titag
C'est pour ca que tu dois adopter la solution de Solo en mettant le code qu'il t'a donnée entre des balises php wink.gif

Normalement, ca envoit des entètes au navigateurs avant l'affichage de la page et qui permettent de spécifier au navigateur de ne pas utiliser le cache pour ledit affichage.
furious Gontran
Ok j'avais pas compris qu'il fallait l'envoyer par php...

Je l'envois par un echo en tout debut de page ?

Ca reste encore flou...

(Je sais j'ais parfois des capacités cerveau limité (vite de la RAM))
Thanh
yO,

les premières lignes de ta page doivent contenir ces lignes, fais attention de ne pas mettre d'espace ou de tabulation avant :

CODE
<?php
header("Pragma: no-cache");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");
?>



Bon courage biggrin.gif
Titag
Tu mets ce code en début de page tout simplement :

CODE
<?php
header("Pragma: no-cache");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");
?>


Attention ! Il faut mettre ce code avant tout le reste !


[edit] Solo un poil + rapide laugh.gif [/edit]
Thanh
C'est ça la vitesse lumière whistling.gif
furious Gontran
Merci bien...

Je regardais comment les mails transmettaient les headers et je ne comprenais pas trop...
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.