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

JavaScript Discussion :

[AJAX] Afficher une image GD avec ajax


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juin 2007
    Messages : 28
    Points : 19
    Points
    19
    Par défaut [AJAX] Afficher une image GD avec ajax
    Bonjour a tous,

    J'ai un problème et si je poste ici c'est que je ne vois pas du tout comment je vais m'en sortir.
    Tout d'abord ce que je faire :
    Une infobulle (image) créé par php selon 3 parametre.
    Puis lors d'un survol de la souris sur un lien cette infobulle apparait.

    Les 3 paramètres sont passés par post. Le problème c'est que si j'appelle directement mon fichier image.php (qui génére l'image) et que j'affiche le résultat avec un innerhtml, il n'affiche pas l'image mais "le code binaire" de celle-ci.
    J'ai donc fait une page de transition ne contenant que :
    <img alt="test" src="image.php" />
    Si j'appelle cette page par ajax. L'infobulle est bien affichée.
    Le problème c'est que les 3 arguments post ne sont pas passés.
    Ils sont bien passés a ma page de transition mais pas a la page image.php.

    Voila,

    Merci !!!

  2. #2
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juin 2007
    Messages : 28
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    J'ai réussi a faire passer des paramètres...en utilisant les sessions.

    Mon code ressemble a celui-ci :
    xhr.onreadystatechange = function() { writediv(xhr); };
    xhr.open("POST", "claroline/image_display.php", true);
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    xhr.send("n1="+n1+"&n2="+n2+"&n3="+n3);


    Ma page image_display.php contient :
    session_start();
    $_SESSION['n1'] = $_POST['n1'];
    $_SESSION['n2'] = $_POST['n2'];
    $_SESSION['n3'] = $_POST['n3'];
    <img alt="test" src="claroline/image.php"/>

    Et la page image.php :
    session_start();
    $nb_inscris = $_SESSION['n1'];
    $nb_cours_acces = $_SESSION['n2'];
    $nb_cours_total = $_SESSION['n3'];
    header ("Content-type: image/png");
    [...]

    Problème :
    les données de session de la page image_display.php sont bien mise a jour a chaque fois...
    Mais pas dans la page image.php
    Il y a un transfert de données mais ce sont toujours les 1ères données reçues qui reste ...
    En gros, si les données 1 - 2 - 3 sont envoyées puis les données 3 - 2 -1
    Ce sont toujours les données 1 - 2 - 3 qui sont traitées pas la page image.php

    Merci,


    EDIT : j'ai compris le problème ... c'est a cause du cache du navigateur ...
    je cherche comment le desactiver

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 20
    Points : 24
    Points
    24
    Par défaut
    Une solution courante pour éviter le problème du cache c'est de rajouter une variable aléatoire à la fin de l'adresse. Elle te servira à rien, mais vu que l'URL change, le cache n'est pas utilisé.

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juin 2007
    Messages : 28
    Points : 19
    Points
    19
    Par défaut
    Oui merci j'aurais du poster la solution.
    En effet, ça marche très bien !
    Personnelement j'ai mis comme variable aléatoire le timestamp actuel.
    <img href='image.php?<?php echo time();?>' alt='image' />

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

Discussions similaires

  1. Afficher une image dicom avec Java
    Par soukySMI dans le forum Imagerie
    Réponses: 1
    Dernier message: 05/07/2012, 12h04
  2. Réponses: 0
    Dernier message: 24/03/2011, 15h26
  3. [AJAX] Afficher une image avec ajax
    Par Mister Nono dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/11/2007, 19h23
  4. Afficher une image JPEG avec le composant TJPEGImage
    Par BigMike dans le forum C++Builder
    Réponses: 4
    Dernier message: 13/07/2006, 15h21
  5. Charger et afficher une image jpg avec les mfc
    Par glop - pas glop dans le forum MFC
    Réponses: 3
    Dernier message: 11/02/2004, 18h59

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