Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1430 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [Compatibilité entre Moz et IE] Problème de rafraichissement [resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Compatibilité entre Moz et IE] Problème de rafraichissement [resolu]

n°736077
force_jaun​e
you play, you pay
Posté le 24-05-2004 à 14:22:18  profilanswer
 

Bonjour à tous,
je travaille sur un site qui propose des pop ups personnalisés aux clients.
j'ai repris une petite interface qui permet à un client de gérer ses popUp.
C'est à dire qu'il peut éditer grace à une interface en ligne le texte, et les photos de son Popup.
J'ai testé pendant le développement sous Moz et tout marche nickel. seulement sous IE, j'ai un problème de rafraichissement.  C'est à dire que lorsque le client choisit une image, l'upload se passe bien et la nouvelle image est bien copiée sur le serveur, mais sous IE, l'image affichée est l'ancienne, alors que c'est bien la nouvelle qui s'affiche sous Moz. En fait, à chaque fois, je copie la photo sur le serveur sous le nom commerces/numeroduclient/image.jpg   Avec les deux navigateurs, l'image qui est créée à cette adresse est bien la bonne, Mozilla m'affiche celle là, mais IE m'affiche celle qu'il a gardé en cache apparement. je vous met des morceaux de mon code :  
 

Code :
  1. //Mon popup $pub est un objet de la classe PopUp
  2. //J'appelle la methode suivante de PopUp pour afficher mon image
  3. // $pub->majimage()
  4. //cette methode me retourne le code html qui va afficher l'image
  5. //Voila le code de ma méthode majimage:
  6. function majimage()
  7. {
  8. //je donne le chemin de l'image
  9. $cheminim=commerces/c'.$this->_commerce['numero'].REPERTOIRE_POPUP_SIMPLE.$this->_numero.'/';
  10. //nom de l'image avec son chemin
  11. $imagetmp = $cheminim."image.jpg";
  12. //chemin depuis la racine du serveur apache
  13. $cheminabsolu=CHEMIN_BASE.$cheminim."image.jpg";
  14. //je recupere la taille de l'image
  15. $taille_img = getimagesize($cheminabsolu);
  16. //calcul des dimensions de l'image affichée
  17. $facteurLargeur=$taille_img[0]/300;
  18.     $facteurHauteur=$taille_img[1]/300;
  19.     $facteur=Max($facteurLargeur,$facteurHauteur);
  20.     $largeur=round($taille_img[0]/$facteur);
  21.     $hauteur=round($taille_img[1]/$facteur);
  22. //creation du code html qui va afficher l'image
  23. //on met ce code dans l'attribut _image de mon objet PopUp
  24. //afin de pouvoir reutiliser cette image
  25. $this->_image='<img src="'.'../'.$imagetmp.'" border=0 width='.$largeur.' height='.$hauteur.'>';
  26. //on retourne l'affichage de l'image
  27. $imagefin='<img src="'.'../'.$imagetmp.'" border=0 width='.$largeur.' height='.$hauteur.'>';
  28. return $imagefin;
  29. }


Donc je voulais savoir si j'ai fais une erreur de code, ou si c'est juste IE qui fonctionne mal, et qui va chercher systématiquement dans son cache, sans se soucier du fait que l'image peut avoir changé entre temps, meme si elle a toujours le meme nom


Message édité par force_jaune le 25-05-2004 à 10:32:32
mood
Publicité
Posté le 24-05-2004 à 14:22:18  profilanswer
 

n°736676
misterping​uin
Posté le 24-05-2004 à 20:53:50  profilanswer
 

essaies ça :
<META HTTP-EQUIV="PRAGMA" CONTENT="no-cache">
 
et ton pb vient bien du fait qu'ie va chercher l'image dans le cache

n°736986
Thierry Ch​atel
Posté le 25-05-2004 à 00:21:09  profilanswer
 

Voilà, il a qu'à mettre une balise META dans son image. Bonne idée !  :whistle:  
 
Plus sérieusement, la solution la plus simple est sûrement de changer le nom de l'image quand tu en charges une nouvelle. Par exemple pour un truc du genre image_635627.jpg, où le nombre vient du timestamp.  
 
Après soit tu vas regarder le nom du fichier image_*.jpg dans le répertoire du client, soit tu gardes le nom du fichier dans son profil.


---------------
Info-Camargue, le portail de la Camargue
n°737140
force_jaun​e
you play, you pay
Posté le 25-05-2004 à 09:12:38  profilanswer
 

en fait, je suis obligé d'appeler mon image "image.jpg", puisque j'ai un gros site qui tourne derrière et qui accède régulièrement à cette image par son nom, et pour le moment j'ai pas trop envie de tout changer, ça serait trop long. Donc si je pouvais trouver une autre solution, ça serait l'idéal ;)
En tout cas, merci pour vos réponses, j'ai pas tout capté ou je dois mettre le <META>, mais je vais me renseigner sur cette balise, merci encore :)

n°737236
gihel
Posté le 25-05-2004 à 09:56:29  profilanswer
 

Sur la page qui est mal rafraichie, rajoute une variable aléatoire derrière le nom de l'image : image.jpg?123456, ca force IE à la télécharger.

n°737295
force_jaun​e
you play, you pay
Posté le 25-05-2004 à 10:26:10  profilanswer
 

ok, je vais essayer de suite, merci beaucoup ;)

n°737306
force_jaun​e
you play, you pay
Posté le 25-05-2004 à 10:32:11  profilanswer
 

ça marche nickel, merci a vous tous, c pas con du tout, le coup du nombre aleatoire derriere le lien de l'image, j'y aurais jamais pensé :)

n°738562
misterping​uin
Posté le 25-05-2004 à 21:52:32  profilanswer
 

Thierry Chatel a écrit :

Voilà, il a qu'à mettre une balise META dans son image. Bonne idée !  :whistle:  
 
Plus sérieusement, la solution la plus simple est sûrement de changer le nom de l'image quand tu en charges une nouvelle. Par exemple pour un truc du genre image_635627.jpg, où le nombre vient du timestamp.  
 
Après soit tu vas regarder le nom du fichier image_*.jpg dans le répertoire du client, soit tu gardes le nom du fichier dans son profil.


jusqu'à preuve du contraire une balise <img> c'est du html, donc je ne vois pas ce qui empeche de mettre une balise meta dans une page html.
 
et la solution des nombres aléatoires est pour les bricoleurs du dimanche qui ne savent pas faire autrement...   :pfff:


Message édité par misterpinguin le 25-05-2004 à 21:52:55
n°1730920
viperledes​uet
Posté le 12-05-2008 à 17:52:42  profilanswer
 

J'avais le même problème l'astuce de la balise meta fonctionne aussi très bien. A mettre dans la partie head de la page html sur laquelle on veut désactiver le cache.


Message édité par viperledesuet le 12-05-2008 à 17:53:19
n°1731056
viperledes​uet
Posté le 13-05-2008 à 09:04:48  profilanswer
 

Finalement çà ne fonctionne pas si bien que çà j'ai utilisé la methode du numéro aléatoire, çà fonctionne a tous les coups.
 
exemple : <img src="img.png?<?=time()?>">

mood
Publicité
Posté le 13-05-2008 à 09:04:48  profilanswer
 

n°1731057
LePhasme
Les Belges domineront le monde
Posté le 13-05-2008 à 09:06:51  profilanswer
 

Déterrage de 4 ans à quelques jours près, joli.


---------------
Instagram - Mon PVT en Australie.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [Compatibilité entre Moz et IE] Problème de rafraichissement [resolu]

 

Sujets relatifs
"Redirection" en fonction de l'adresse tapée...[toujours pas résolu]PRoblème de config PHP
-Résolu- [EasyPHP] Internal Server Error !Probleme son 5.1 sur fmod
probleme de stockage de socket[Java] Problème pour convertir un string en entier [resolu]
problème de pointeur sur fonctionProblème écriture dans fichier texte
[PHP] - Décomposer les chiffres d'une année (-> résolu <-) 
Plus de sujets relatifs à : [Compatibilité entre Moz et IE] Problème de rafraichissement [resolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR