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 :

Afficher image stockée sous forme binaire [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut Afficher image stockée sous forme binaire
    Salut à tous =)

    Je stocke des images au format binaire dans une base de données.

    L'utilisateur sélectionne un article, et la fiche produit s'affiche, avec la photo.

    Mais le problème, c'est que quand je récupère l'image et que je l'affiche, ça me met le code binaire de l'image, et non l'image.

    A part créer un fichier où j'écrirais le contenu de la photo, il n'y a pas un autre moyen de l'afficher ?

    Merci ++

  2. #2
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    En utilisant surement des header() appropriés.
    Comme header('Content-type: image/gif');

    Je crois que c'est quelque chose comme ça.

  3. #3
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    Ben oui, je suis d'accord avec toi, mais le problème, c'est que je ne veux pas afficher QUE l'image, je veux toute la fiche produit avec du texte et quelques images.

    Or j'ai essayé ta solution, mais elle semble ne fonctionner que dans le cas où je n'afficherais que l'image.

    Merci quand même

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 79
    Points : 60
    Points
    60
    Par défaut
    tu n'a donc pas le choix,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    texte
    <img src="gereimage.php?image=cellequejeveux"/>
    EDIT:
    et dans le fichier gereimage.php,
    applique ce que t'a dit plus haut Anduriel
    ( header )

  5. #5
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    Je vais essayer, mais ce n'est pas sûr que cela fonctionne, car le "Content-type" est envoyé dans le header, or il me semble bien que dès qu'un seul caractère est envoyé il n'est plus possible de modifier le header...

  6. #6
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 79
    Points : 60
    Points
    60
    Par défaut
    tu n'a pas compris...

    code de MAPAGE.PHP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    texte 
     
    <img src="gereimage.php?image=cellequejeveux"/>
    code de gereimage.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?
    header('Content-Type: image/gif');
    echo $binaireImage;
    ?>

    donc dans gereimage.php
    il n'y a rien d'autre d'envoyé vers le navigateur que l'image ( et les entetes qui vont bien )

    par contre, dans le fichier MAPAGE.php, tu met ce que tu veux.

  7. #7
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    Bon il ne met pas de message d'erreur pour le header(), mais il n'affiche pas mon image.

    Il affiche la petite croix comme s'il ne trouvait pas l'image...

  8. #8
    Membre confirmé Avatar de GregPeck
    Inscrit en
    Novembre 2005
    Messages
    530
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 530
    Points : 540
    Points
    540
    Par défaut
    Fait voir ton code de gereimage.php

  9. #9
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 79
    Points : 60
    Points
    60
    Par défaut
    accede a l'url directement, et met en commentaire le content-type
    pour voir quel est l'erreur.

  10. #10
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    Ok, ça a fonctionné en allant directement sur l'url, j'avais un problème de connexion de à la base.

    Merci beaucoup

    En fait, je n'avais pas compris qu'il balançait un header à chaque page, et non à chaque "échange".
    Par exemple on fait une requête d'une page. Or cette page contient des frames, donc plusieurs pages. Je pensais qu'il n'envoyait qu'un seul en-tête pour tout, mais il en renvoie un à chaque page si j'ai bien compris, c'est bien ça ?

    Merci encore

  11. #11
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 79
    Points : 60
    Points
    60
    Par défaut
    oui, c'est ça.
    un header à chaque page, et non à chaque "échange
    mais c'est plus a chaque REQUETE que a chaque page ( une image, une page, est un fichier, pour que le navigateur l'obtienne, il demande gentiment au serveur via une REQUETE HTTP )

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

Discussions similaires

  1. [MySQL] Problème pour afficher le résultat d'une procédure stockée sous forme de table html
    Par Baleze dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/12/2012, 16h15
  2. Réponses: 1
    Dernier message: 20/09/2012, 04h22
  3. Ouvrir un fichier stocké en BD sous forme binaire !
    Par rad_hass dans le forum ASP.NET
    Réponses: 5
    Dernier message: 14/05/2008, 18h05
  4. Réponses: 12
    Dernier message: 22/02/2005, 17h45
  5. Réponses: 2
    Dernier message: 26/04/2004, 13h55

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