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 image ajax


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 12
    Points
    12
    Par défaut [AJAX] afficher image ajax
    Bonjour,
    J'ai une base de données (SQL SERVER 2000) dans laquelle sont stockees des photos de type "image".
    Je voudrais afficher l'image sur ma page en passant par ajax mais ca ne marche pas...
    Je code en ASP/javascript et voila mon code :

    displayPicture.asp :

    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
    	'Recordset
    	set rsCmd = Server.CreateObject("ADODB.Command")
    	rsCmd.ActiveConnection = dbConn 
    	rsCmd.CommandText = "sp_essPicture"
    	rsCmd.CommandType = adCmdStoredProc
     
    	rsCmd.Parameters.Append rsCmd.CreateParameter("@name", adVarchar, adParamInput, 50, userName)
     
    	Set rsTemp = rsCmd.Execute
     
     
    	Response.BinaryWrite(rsTemp(0))
     
    rsTemp.Close
    set rsTemp = Nothing
    set rsCmd = Nothing
    ma fonction js :
    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
    function displayPicture()
    {
    	getXhr();
     
     
    	xhr.onreadystatechange = function() {
    		if(xhr.readyState == 4 && xhr.status == 200) {
    			document.getElementById("message").style.display = 'none';
    			document.getElementById("tdPicture").appendChild(document.createTextNode(xhr.responseText));
     
    		}
    	}
    		  xhr.open("POST",'displayPicture.asp?nocache=" + Math.random()',true);
    		  xhr.setRequestHeader('Content-Type','ISO-8859-1');
    		 // xhr.overrideMimeType('Content-Type','application/x-www-form-urlencoded');
    		  xhr.send();
    }
    Voila si je mets dans ma page asp response.write je me retrouve avec des caracteres bizzares et si je mets response.BinaryWrite je recois une erreur javascript...
    Peut-etre faut-il jouer avec le header, p-etre ce que je demande n'est pas possible...

    Si qqun sait, je suis preneur

    Merci

  2. #2
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Si ce que tu stockes dans ta base, c'est l'image elle même, alors c'est pas possible car ajax ne permet de manipuler que du texte.

    Si tu stockes l'adresse du fichier image, alors tu peux retourner cette adresse et créer un tag img pour l'afficher (tu peux utiliser cette technique si tu stockes les bits de l'image en créant un fichier image a partir de ta base, et en renvoyant son adresse et non plus ses bits).

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 12
    Points
    12
    Par défaut
    mon probleme est que la base de donnees est deja cree et je ne peux la modifier...

  4. #4
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    Il ne te reste alors que la 2e solution: créer un fichier image a partir de ta base, et renvoyer son url.

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

Discussions similaires

  1. [AJAX] Afficher résultat Ajax dans la source d'une page
    Par PoMdaPiMp dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 06/05/2008, 17h22
  2. [AJAX] Afficher une image GD avec ajax
    Par darkvodka dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/06/2007, 00h43
  3. Afficher image + ajax
    Par MaitrePylos dans le forum Ruby on Rails
    Réponses: 5
    Dernier message: 21/05/2007, 11h37
  4. [AJAX] Div dynamique AJAX. Sous IE, les images ne s'affichent pas
    Par N3odyme dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/12/2006, 20h56
  5. [AJAX] Modifier avec AJAX une image générée avec GD
    Par thsantac dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 27/03/2006, 19h34

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