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 :

Affichage d'image depuis ma base


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de bruce207
    Inscrit en
    Novembre 2007
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 319
    Par défaut Affichage d'image depuis ma base
    Bonjour,
    j'ai lu tout d'abord que pour stocker une image dans une base mysql on pouvait stocker l'adresse de l'image dans la base. J'ai donc créer une table avec un champ img_adresse en varchar(255) qui stocke cette adresse. Ensuite j'ai tapé le script suivant pour pouvoir l'afficher dans mon navigateur :
    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
    <?php
    $cnx = mysql_connect('localhost', 'root', '') or die (mysql_error ());
    $ret = mysql_select_db('Monimg') or die (mysql_error ());
    $req = "SELECT img_adresse from images";
    $rst = mysql_query($req) or die (mysql_error ());
    $col = mysql_fetch_row($rst);
     
    if ( !$col[0] )
    { echo "Pas d'image dans la base";
    }
    else
    {
    echo $col[0];
    }
    ?>
    mais au lieu de l'image il ne m'affiche que l'adresse de celle ci sans les antislahs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    :// C:Documents and SettingsUSERBureauOuest_EchosOUEST ECHOS (H)salut action.jpeg
    l'adresse etant : C:\Documents and Settings\USER\Bureau\Ouest_Echos\OUEST ECHOS (H)\salut action.jpeg
    il est à remarquer que le nom du fichier image contient un espace.
    Que doit je faire pour que mon navigateur affiche l'image ?
    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bonjour

    Tu peux déjà commencer par afficher ton image dans des balises img
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     echo '<img src="'.$col[0].'">';
    Et si ça ne fonctionne pas, jette un coup d'oeil au code source pour savoir ce qu'il t'a mis dans l'attribut src.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Salut,

    Moi ce que j'ai l'habitude de faire lorsque je fais un insert d'adresse d'image dans une DB c'est d'enregistrer le nom du fichier image dans la db, et de charger dans une variable le chemin, comme ceci:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $image_path='images/';
     
    $query='SELECT img_adresse FROM images';
    $request=mysql_query($query)or die(mysql_error());
     
    while($row=mysql_fetch_array($request)){
     
    if(is_file($image_path.$row['img_adresse']))
         echo '<img src="' . $image_path.$row['img_adresse'] . '" alt="" />';
    else
         echo 'L\'image n\'existe pas';
     
    }

  4. #4
    Membre éclairé Avatar de bruce207
    Inscrit en
    Novembre 2007
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 319
    Par défaut
    ça m'affiche toujours l'adresse de l'image sans les antislashs(\) et je crois que le probleme viens de la base car j'ai regardé dans celle ci, l'adresse de l'image est stockée sans antislashs pour separer les dossiers. J'aimerais savoir comment faire pour stocker l'adresse de l'image correctement dans la base mysql et enfin pouvoir l'afficher. Pour enregistrer le chemin j'ai utilise la requete INSERT.
    Merci

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    effectivement le problème a l'air de venir de ton enregistrement. Peut-on avoir la requête insert ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 37
    Par défaut
    est tu sur que est bien le champs ou est enregistrer le nom ou lien de l'image et regarde que le lien soit absolut
    ton image est elle bien dans le repertoir ?

    compare le lien qui t'affiche sur ton navigateur et celui que tu a dans ta barre d'adresse

    ex:

    IE : htp://localhost/mon_site/photos/mon_image.jpg

    explorateur windows:

    c:\wamp\www\mon_site\potos\mon_image.jpg

  7. #7
    Membre éclairé Avatar de bruce207
    Inscrit en
    Novembre 2007
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 319
    Par défaut
    la requete la voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO images (img_adresse) values ( 'C:\...\monimage.jpg')

Discussions similaires

  1. affichage d'image depuis la base de donnée
    Par tortuegenie dans le forum ASP.NET
    Réponses: 4
    Dernier message: 30/06/2009, 13h23
  2. [MySQL]Affichage d'image depuis une base de données
    Par Sofute dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 20/02/2007, 14h43
  3. Affichage d'images depuis base MySQL
    Par klerdesign dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 25/10/2006, 15h47
  4. [MySQL] Affichage d'image de ma base
    Par arti2004 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 12/06/2006, 12h03
  5. Problème d'affichage d'image depuis une pseudo-frames
    Par kriss_87 dans le forum Langage
    Réponses: 2
    Dernier message: 24/05/2006, 22h39

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