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

  FORUM HardWare.fr
  Programmation
  PHP

  Probleme avec le refus de mise en cache !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme avec le refus de mise en cache !

n°805512
Nenelle
Josie Maran addicted
Posté le 24-07-2004 à 23:24:34  profilanswer
 

Bonjour.
 
Tout d'abord si le sujet a déja été traité excusez moi mais après une petite recherche je n'ai pas trouvé.
 
Mon probleme donc : j'ai un script php tout con qui se trouve dans un repertoire avec une liste d'images. Il renvoie en tant qu'image une des images, tirée au sort.
 
En gros ca donne ca :
 

Code :
  1. <?php
  2.   $first = 1;
  3.   $number = 20;
  4.   $filename = "picture".sprintf("%02d", rand($first, $first + $number)).".jpg";
  5.   $fd = fopen($filename, "r" );
  6.   header("Content-Type: application/octet-stream" );
  7.   header("Content-Length: ".filesize($filename));
  8.   header("Content-Disposition: attachment; filename=$filename" );
  9.   readfile($filename);
  10. ?>


 
Tout fonctionne bien a ce niveau, maintenant j'aimerais forcer la non mise en cache de l'image générée via ce script, en gros je voudrais que sur une meme page, si on a deux img avec comme source ce script php, l'image ne soit pas la meme
 
J'ai donc ajouté ca dans le script (trouvé sur php.net):
 

Code :
  1. // Date du passé
  2. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
  3. // toujours modifié
  4. header("Last-Modified: " . gmdate("D, d M Y H:i:s" ) . " GMT" );
  5. // HTTP/1.1
  6. header("Cache-Control: no-store, no-cache, must-revalidate" );
  7. header("Cache-Control: post-check=0, pre-check=0", false);
  8. // HTTP/1.0
  9. header("Pragma: no-cache" );


 
Cependant ca ne marche pas, les images sont identiques sur une meme page.
 
J'ai zieuté vite fait dans la conf de mon Apache mais sans avoir rien vu qui pourrait clocher au niveau du cache (Apache 1.3.29)...
 
Je commence par conséquent à croire que ça pourrait venir des clients Web (j'ai essayé avec Konqueror 3.2, Firefox 0.9 et Internet Explorer 6.0 et pour tous ca fait le meme truc)...
 
Si ce n'est pas ça quelqu'un aurait il une idée pour me débloquer parce que là je ne voies pas trop...
 
Ca doit pourtant bien etre faisable :)
 
Merci


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
mood
Publicité
Posté le 24-07-2004 à 23:24:34  profilanswer
 

n°805580
Lex
Posté le 25-07-2004 à 02:02:11  profilanswer
 

tu es vraiment obligé de le gérer comme ça ? Sinon passe par une fonction du style :  
 

Code :
  1. function getImageAléatoire($repertoire)
  2. {
  3.     $first = 1;
  4.     $number = 20;
  5.     $filename = $repertoire."picture".sprintf("%02d", rand($first, $first + $number)).".jpg";
  6.     echo file($filename);
  7. }


 
qui te retourne le même résultat que tu veux :)


Message édité par Lex le 25-07-2004 à 02:03:12
n°805617
Nenelle
Josie Maran addicted
Posté le 25-07-2004 à 10:35:42  profilanswer
 

non ca marche pas... je voies pas comment ça marcherait :o je veux que sur une meme page html avec deux images ayant pour src le meme php les deux images soient differentes
 
personne sinon :( ?


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
n°805619
simogeo
j'ai jamais tué de chats, ...
Posté le 25-07-2004 à 10:38:19  profilanswer
 

Nenelle a écrit :

non ca marche pas... je voies pas comment ça marcherait :o je veux que sur une meme page html avec deux images ayant pour src le meme php les deux images soient differentes
 
personne sinon :( ?


 
tu as essayé avec quel navigateur ?  

n°805621
Nenelle
Josie Maran addicted
Posté le 25-07-2004 à 10:39:16  profilanswer
 

c'est marqué dans le message initial :
 
(j'ai essayé avec Konqueror 3.2, Firefox 0.9 et Internet Explorer 6.0 et pour tous ca fait le meme truc)


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
n°805622
simogeo
j'ai jamais tué de chats, ...
Posté le 25-07-2004 à 10:40:55  profilanswer
 

désolé, j'avais zappé.
 
tu peux poster le code tel qu'il est actuellement

n°805625
Nenelle
Josie Maran addicted
Posté le 25-07-2004 à 10:42:40  profilanswer
 

vi voila :
 

Code :
  1. <?php
  2.   // Date du passé
  3.   header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
  4.  
  5.   // toujours modifié
  6.   header("Last-Modified: " . gmdate("D, d M Y H:i:s" ) . " GMT" );
  7.  
  8.   // HTTP/1.1
  9.   header("Cache-Control: no-store, no-cache, must-revalidate" );
  10.   header("Cache-Control: post-check=0, pre-check=0", false);
  11.  
  12.   // HTTP/1.0
  13.   header("Pragma: no-cache" );
  14.  
  15.   $first = 1;
  16.   $number = 20;
  17.   $filename = "picture".sprintf("%02d", rand($first, $first + $number)).".jpg";
  18.   $fd = fopen($filename, "r" );
  19.   header("Content-Type: application/octet-stream" );
  20.   header("Content-Length: ".filesize($filename));
  21.   header("Content-Disposition: attachment; filename=$filename" );
  22.   readfile($filename);
  23. ?>


 
peut etre que l'ordre des headers est sensible ?


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
n°805626
simogeo
j'ai jamais tué de chats, ...
Posté le 25-07-2004 à 10:47:39  profilanswer
 

ouais essaies de jouer avec ca...:-/  

n°805631
Nenelle
Josie Maran addicted
Posté le 25-07-2004 à 11:04:10  profilanswer
 

bah j'ai essayé un peu, rien à faire.
 
bon bah tant pis


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!
n°807253
Nenelle
Josie Maran addicted
Posté le 27-07-2004 à 09:20:06  profilanswer
 

allez jme fais un petit up :o


---------------
http://chilax.com/forum/index.php?showforum=46 => !!!

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

  Probleme avec le refus de mise en cache !

 

Sujets relatifs
probleme a la compilation sous VC++ .NET[Perl] probleme de socket bloquant
Problème compilateur cobol[ C# ] problème "access denied"
Cache-Cache d'éléments sous IEprobleme lors de l'installation de Visual Basic 6.0
problème avec la fonction heradercss IE, FF et mise en page
probleme d'affichage BDD avec les chiffresprobleme Visual Basic Access
Plus de sujets relatifs à : Probleme avec le refus de mise en cache !


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