IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Mise en cache / Rafraichissement


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut Mise en cache / Rafraichissement
    Salut à tous,

    J'ai une image GD sur laquelle je défini des zones dynamiquement (points et lignes définie sur une BDD)
    J'ai une interface d'admin sur laquelle je bascule le status d'actif à inactif et vice versa par l'intermédiaire d'un pti javascript.
    Mais lorsque je retourne sur la page d'accueil, je suis obligé de rafraichir la page pour visualiser le résultat GD correct.
    Quelqu'un aurait-il une astuce pour que lorsque je retourne sur ma page d'accueil l'image soit directement mise à jour ?

    Merci pour votre aide...

  2. #2
    Membre actif
    Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 292
    Points
    292
    Par défaut
    en html je sais que tu peut empecher une page et son contenu de s'enregistrer dans le cache du navigateur.

  3. #3
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    et comment fais-tu alors?

  4. #4
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    J'ajoute juste quelques bout de codes
    Code pour l'affichage de l'image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <div id="synoptique_content" onload="document.synoptique.reload(true);">
     <img name="synoptique" src="<?php echo get_image($_SESSION['id_site']) ;?>" class="img_syn">
    </div>
    Code pour la génération de l'image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
    function get_image($id_site)
    {
     $nb_zones = 0 ;
     
     require('../scripts/connexion.php');
     $connexion = mysql_connect($hostname, $username, $password) or die("Connexion impossible au serveur $hostname par $username");
     mysql_select_db($database, $connexion);   
     // On recupere le synoptique associé au site
     $sql = "SELECT * FROM site WHERE id_site = '".$_SESSION['id_site']."'";
     $req = mysql_query($sql) or die(mysql_error());
     $data = mysql_fetch_array($req);
     $synoptique = $data['image_path'];
     
     if(strcmp($data['image_type'],'png')==0)
     {
      $image = imagecreatefrompng($synoptique); // Conversion de la chaîne binaire en ressource image GD.
     }
     elseif(strcmp($data['image_type'],'jpg')==0)
     {
      $image = imagecreatefromjpeg($synoptique); // Conversion de la chaîne binaire en ressource image GD.
     }
     elseif(strcmp($data['image_type'],'gif')==0)
     {
      $image = imagecreatefromgif($synoptique); // Conversion de la chaîne binaire en ressource image GD.
     }
     
     // On définit la couleur du trait
     $color = "BEDFFE";
     $rouge = hexdec(substr($color,0,2)); //conversion du canal rouge
     $vert = hexdec(substr($color,2,4)); //conversion du canal vert
     $bleu = hexdec(substr($color,4,6)); //conversion du canal bleu
     
     $turquoise = imagecolorallocate($image, $rouge, $vert, $bleu); 
     
     $sql = "SELECT * FROM zone WHERE id_site = '".$_SESSION['id_site']."' AND zone_is_active='1'";
     $req = mysql_query($sql) or die(mysql_error());
     
     while($zone = mysql_fetch_array($req))
     {
      if($zone['zone_is_active']==1)
      {
       $points = $zone['coord'];
       $points_tab = explode(";", $points);
     
       $size_tab = count($points_tab);
     
       for($inc=0 ; $inc < $size_tab ; $inc = ($inc + 4) )
       {
        $x1 = $points_tab[$inc];
        $y1 = $points_tab[$inc+1];
        $x2 = $points_tab[$inc+2];
        $y2 = $points_tab[$inc+3];
     
        imagelinethick($image, $x1, $y1, $x2, $y2, $turquoise, 2);
       }
     
       $file = "../media/synoptique/synoptique.png" ;
       imagepng($image, $file);
     
       $nb_zones++ ;
      }
     }
     
     if($nb_zones==0)
     {
      return $data['image_path'] ;
     }
     else
     {
      return $file ;
     }  
    }
    A savoir que lorsque je teste sous FF, pas de soucis
    Mais sous IE, je suis obligé de faire un F5 pour réactualiser mon image !

    D'ou provient ce problème ?

  5. #5
    Membre averti Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Points : 345
    Points
    345
    Par défaut
    Pour ceux que ca interresse, il suffit de rajouter un argument à l'image lors de l'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <img src="image/monimage.jpg?v=<?php echo date('ymdhs'); ?>" alt="" />
    Merci quand meme et bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Forum] Mise en cache
    Par Jukien dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 16/08/2006, 15h41
  2. Empêcher la mise en cache
    Par Huntress dans le forum Langage
    Réponses: 4
    Dernier message: 30/03/2006, 11h54
  3. Mise en cache d'une page
    Par clad523 dans le forum ASP
    Réponses: 1
    Dernier message: 06/03/2006, 11h44
  4. Empêcher la mise en cache des images
    Par oranoutan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 15/02/2006, 11h49
  5. mise en cache du navigateur
    Par littleqi dans le forum ASP
    Réponses: 4
    Dernier message: 03/06/2005, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo