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

PHP & Base de données Discussion :

Récupération d'une image JPEG a partir d'une bdd MySQL [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 20
    Points
    20
    Par défaut Récupération d'une image JPEG a partir d'une bdd MySQL
    Salam,

    Une acquisition a partir d'une webcam d'une image a été enregistrer dans un serveur MySQL,
    L'image est enregistrée sous forme d'une suite de nombre séparée par des virgules (10594215,10199457,10197917,...).
    Mon probléme est ne pas pouvoir afficher cette image.
    En utilisant la fonction ci-dessous j'obtiens des symboles (ÿØÿàJFIFÿþ™`§ä87?+g'‚2Hæ=É+^ÊïHõW~êÓn*>š7óçUªVN2vI{Ý£›ºNö·2ÑZÎÍÞÞ§`…).

    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
    //********************
    function affiche_photo($image){
    	header("Content-type: image/jpeg");	
    	$temp=explode(",",$image);
    	settype($temp[1],'integer');
    	$im = imagecreatetruecolor(140,140);
    	$k=0;
    	for($i=0;$i<140;$i++){
    	 for($j=0;$j<140;$j++){
    	   imagesetpixel($im,$j,$i,$temp[$k]);
    	   $k++;
    	}
    	}
    	$txt_color = imagecolorallocate($im, 255, 255, 255);
    	imagestring($im, 1, 0, 0, '', $txt_color);
    	imagejpeg($im,"",100);
    	imagedestroy($im);
    }
    //********************
    J'avais cru que l'appel de 'header' est a l'origine de l'erreur, j'ai mis 'output_buffering' a 'on' (php.ini), ça n'a pas resoud le problème.
    Mon objectif est de trouver une fonction qui permet d'afficher l'image a partir de la suite de chiffre.

    Cordialement
    Yosaikan

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    La présence de JFIF dans la chaine de caractere laisse supposer que tu reconstitues bien un fichier JPEG.

    Est ce que tu affiches d'autres éléments depuis ce fichier ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    Non c'est tout ce que je reçois, des caractères incompréhensibles, non (ou mal) interprété en tant que image JPEG.

  4. #4
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    Pourrais-tu nous montrer la manière dont tu utilises cette fonction, je pense que tu appelles cette fonction dans une page qui contient déjà du texte ou du HTML.

    Appelles tu le script qui execute la fonction affiche_image() avec la balise <img/> ?

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    Salam,

    l'image est a afficher dans une cellule, donc je dois avoir qq chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    echo "<tr><td>";
    affiche_image($rows[0]);
    echo "</td></tr>";
    où $rows[0] est le champs contenant le code de l'image lu a partir de la base.

    Merci

  6. #6
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Comme sabotage le laisse deviner plus haut, tu ne peux pas renvoyer au navigateur un document qui est une image, et qui contient du html en meme temps.

    En HTML pour afficher une image il faut utiliser la balise <img/> :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo '<tr><td><img src="image.php?photo='.$rows[0].'" /></td></tr>';
    Le script image.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // require('script_qui_contient_affiche_photo.php');
    if(isset($_GET['photo'])){
        affiche_photo($_GET['photo']);
    }
    Si tu regardes bien tout ceci est très logique, le script image.php renvoie un document qui est une image (une vraie !), la balise <img/> va chercher un document qui est une image et déssines son rendu dans le navigateur.

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    Merci bien pour tout l'interet que tu as porté a mon souci, je vais essayer cette solution et je te tiens au courant.

    Merci ThomasR

  8. #8
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    "un as" est le mot approprié qui décrit chacun de vous.
    Ce que vous avez proposé été la solution.
    Choukran jazilan (Merci beaucoup)

    Cordialement
    Yosaikan

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

Discussions similaires

  1. Afficher une image dans iReport à partir d'une BD
    Par BI-Ali dans le forum iReport
    Réponses: 0
    Dernier message: 02/09/2010, 12h56
  2. Génération d'une shadow gradient map à partir d'une image
    Par bappy dans le forum Traitement d'images
    Réponses: 11
    Dernier message: 22/03/2010, 17h55
  3. Réponses: 7
    Dernier message: 22/01/2009, 09h39
  4. Réponses: 5
    Dernier message: 17/04/2008, 18h44
  5. generer une image bitmap a partir d'une scene OGL
    Par FreshLog dans le forum OpenGL
    Réponses: 4
    Dernier message: 01/07/2003, 11h29

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