Mise en cache de fichier CSS sous MSIE[resolu]

Mise en cache de fichier CSS sous MSIE[resolu] - HTML/CSS - Programmation

Marsh Posté le 24-03-2005 à 15:53:30    

Bonjour, j'ai le problème suivant :
 
 
edit: bon en fait j'avais mal situé mon problème. J'arrive à faire recharger la page à windows, mais c'est pas ca le problème.
 
Voilà le topo ;  
je dois réaliser un "explorateur" (type explorer windows), mais accessible depuis internet (c'est pas pour explorer des fichiers, mais des tissus biologiques, bref...)
 
Donc si l'utilisateur clique sur un tissu, ca fait apparaitre les tissus enfants, bref, comme un explorer quoi.
 
Pour cela je suis passé par les CSS, c'est-à-dire que PHP modifie à chaque clique le fichier CSS pour donner la position sur la page des noms des tissus. (je sais c'est pas le but d'un fichier CSS qui doit rester en cache pour économiser de la bande passante, mais bon)
 
Donc sous tous les navigateurs sauf MSIE, le fichier CSS modifié est bien rechargé à chaque modification, mais pas sous IE.
Et la, je vois absolument pas comment une ligne de code peut dire a MSIE : recharge le fichier CSS à chaque modif.
 
Pour info, ca marche parfaitement sous MSIE si dans les options on lui dit de vérifier si une nouvelle version de la page est disponible à chaque visite (au lieu de automatique), mais bon c'est pas l'option choisie par la majorité des utilisateurs.
 
 
Quelqu'un aurait-t-il une idée pour faire recharger le fichier CSS à chaque fois à MSIE?


Message édité par Djebel1 le 24-03-2005 à 17:34:28
Reply

Marsh Posté le 24-03-2005 à 15:53:30   

Reply

Marsh Posté le 24-03-2005 à 16:38:37    

Tout simplement en faisant en sorte que tous tes liens vers cette page soient sous la forme page.html?rand=jdioiHnnNIDa (la chaine était générée, soit par php (en faisant un echo de chiffre aleatoire), soit par javascript (de la meme maniere, document.write('<a href="page.html?rand=' + nb_aleatoire + '">'))).
 
Tu n'as pas besoin d'utiliser cette chaine où que ce soit...
 
 
Par contre, en faisant un F5, ca risque de rafraichir la page a partir du cache quand-meme.

Reply

Marsh Posté le 24-03-2005 à 16:39:27    

ha bah oui tout simplement, je suis trop bête :D
 
edit : sinon quelqu'un a une meilleure méthode pour forcer le reload de la page à MSIE?


Message édité par Djebel1 le 24-03-2005 à 16:40:10
Reply

Marsh Posté le 24-03-2005 à 16:59:12    

je rajoute un message car j'avais mal situé mon problème et je l'ai donc complètement édité

Reply

Marsh Posté le 24-03-2005 à 17:06:01    

Effectivement, ce n'est plus vraiment le même problème :D
 
Dans ce cas, tant qu'à recharger le css à chaque fois, intègre-le à la page html plutôt que de la mettre en lien.
 
tu fais <style><?php include("style.css" ); ?></style> :o

Reply

Marsh Posté le 24-03-2005 à 17:34:11    

ok encore une fois je suis super bête de pas y avoir pensé :D
 
un grand merci à toi, effectivement ca marche :) (et heureusement, sinon mon alternative c'était de faire un truc en PHP-GD, mais vla le tps de chargement de la page ;) )

Reply

Marsh Posté le 26-03-2005 à 00:42:14    

Pourquoi ne pas faire "cracher" le css par un script php, ce dernier pourrait avant l'envoi de la css, envoyer les headers concernant le temps de cache des css.
De cette facon on peut donner des infos precises a IE concernant la gestion de la css dans le cache.

Reply

Sujets relatifs:

Leave a Replay

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