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

Langage PHP Discussion :

[PHP-JS] problème affichage image


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 23
    Par défaut [PHP-JS] problème affichage image
    Bonjour a tous.

    j'ai des images stockées sous cette forme dans ma base de donnée mysql:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    iVBORw0KGgoAAAANSUhEUgAAAKgAAACZCAYAAAC7bXG8AAAABGdBTUEAALGOfPtRkwAAACBjSFJ
    NAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAA8tklEQVR4Xu19B3dUR7Yu2G
    RJiCCSCAIEAgVAKIByAGUhIZCEyDkHgcgmmWx7bIMNxh6bmXkTHGbmvrkOc9+77641a9135733u
    /b7vuquVvXpOqdPt1og7GOvWi26T++uU+erXVX722H8uHHjBC34LxiBMTsCBKjvlpU1R8o2VEhH
    11bZve+Q7D98TPYePBq0YAxiMLDnwGHp6Ru
    Si je fait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?
          str_bin = "iVBORw0KGgoAAAA [...] r/QO2s66zb8J8AAAAASUVORK5CYII=";
          str_type = "image/png";
          header ("Content-type: ".$img_type);
          echo base64_decode($str_bin);
    ?>
    Cela fonctionne mais le probleme,c'est vu que cette chaine binaire est dans la bdd, et dans un fichier de type xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <vCard xmlns="vcard-temp" prodid="-//HandGen//NONSGML vGen v1.0//EN" version="2.0">
    [...]
    <PHOTO>
    <TYPE>image/png</TYPE>
    <BINVAL>
    iVBORw0KGgoAAAANSUhEUgA [...] b8J8AAAAASUVORK5CYII=</BINVAL>
    </PHOTO>
    [...]
    </vCard>
    Je me suis dit, je vais utiliser mon code que j'utilise pour recuperer entre chaque balises, mais sa ne marche pas
    Voici le code d'affichage de l'image avec les recup entre les balises:
    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
    <?
    $user = @$_GET["user"];
    mysql_connect("HOST", "USER", "PASS");
    mysql_select_db("DB");
    $req = "SELECT * "."FROM jiveVCard WHERE username = '".$user."'";
    $ret = mysql_query ($req) or die (mysql_error ());
    $col = mysql_fetch_row ($ret);
    mysql_close();
    if (preg_match('#<TYPE>(.*)</TYPE>#', $col[1], $m)) {
        $img_type = $m[1];
        }
    if (preg_match('#<BINVAL>(.*)</BINVAL>#', $col[2], $m)) {
        $img_bin = $m[1];
        }
          header ("Content-type: ".$img_type);
          echo base64_decode($img_bin);
    ?>
    Lorsque j'accede a mon image via img.php?user=rhaamo par ex, sa m'afiche du texte, et ce texte c'est l'url que j'ai entré

    Si quelqun a une petite idée car la je seche un peut

    Merchi d'avance.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut
    Bonjour,
    tu pourrais remplacer header par echo pour voir le contenu des variables.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 23
    Par défaut
    salut.
    hum, apres 1semaine sans y toucher je re regarde mon code et hum, marche pas
    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
    <?
    $user = @$_GET["user"];
    mysql_connect("localhost", "user", "pass");
    mysql_select_db("bdd");
    $req = "SELECT * "."FROM jiveVCard WHERE username = '".$user."'";
    $ret = mysql_query ($req) or die (mysql_error ());
    $col = mysql_fetch_row ($ret);
    mysql_close();
    if (preg_match('#<TYPE>(.*)</TYPE>#', $col[1], $m)) {
        $img_type = $m[1];
        }
    if (preg_match('#<BINVAL>(.*)</BINVAL>#', $col[2], $m)) {
        $img_bin = $m[1];
        }
          echo $img_type."<br>";
          echo $img_bin;
    ?>
    img_type affiche bienletype d'image mais img_bin que dale, et je voie pas ou est l'erreur

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut
    $col[2] est la bonne colonne pour img_bin dans la table jiveVCard ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 23
    Par défaut
    en modifiant comme suit:
    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
    20
    21
    <?
    $user = @$_GET["user"];
    mysql_connect("localhost", "user", "pass");
    mysql_select_db("bdd");
    $req = mysql_query("SELECT * from jiveVCard WHERE username = '$user' ");
    while( $contenu = mysql_fetch_array ($req))
        {
        $donnees = $contenu['value'];
        }
    mysql_close();
    echo $donnees."<hr><br>";
    if (preg_match('#<TYPE>(.*)</TYPE>#', $donnees, $m)) {
        $img_type = $m[1];
        }
    if (preg_match('#<BINVAL>(.*)</BINVAL>#', $donnees, $m)) {
        $img_bin = $m[1];
        }
     
          echo $img_type."<br><hr>";
          echo $img_bin;
    ?>
    j'obients le resultat de donnees et de img_type, mais le resultat de donnees, n'est pas celui attendu.
    Dans labdd celui-ci est sous la forme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <vCard xmlns="vcard-temp" prodid="-//HandGen//NONSGML vGen v1.0//EN" version="2.0">
    <FN>Marc Lagrange</FN>
    <NICKNAME>marko</NICKNAME>
    <PHOTO>
    <TYPE>image/png</TYPE>
    alors que j'y obtiens sous la forme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Marc Lagrange marko  image/png  iVBORw0KGgoAAAANSUhEUgAAAKgAAACZCAYAAAC7bXG8AAAABGdBTUEAALGOfPtRkwAAACBjSFJ NAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAA8tklEQVR4Xu19B3dUR7Yu2G RJiCCSCAIEAgVAKIByAGUhIZCEyDkHgcgmmWx7bIMNxh6bmXkTHGbmvrkOc9+77641a9135733u /b7vuquVvXpOqdPt1og7GOvWi26T++uU+erXVX722H8uHHjBC34LxiBMTsCBKjvlpU1R8o2VEhH
    iVBORw0... etant le code binaire de l'image.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut
    que contient $img_bin ? rien ? une partie de binval ? autre chose ?

Discussions similaires

  1. [MySQL] problème affichage image avec sql
    Par igaurillac dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/02/2007, 18h04
  2. [PHP-JS] Problème affichage avec structure if
    Par kitty2006 dans le forum Langage
    Réponses: 31
    Dernier message: 07/09/2006, 18h01
  3. [VB]Problème affichage image dans IE6
    Par flogreg dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/02/2006, 18h41
  4. Problème affichage image dans IE6
    Par flogreg dans le forum IE
    Réponses: 6
    Dernier message: 13/02/2006, 14h29
  5. problème affichage image
    Par thealpacino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 30/05/2005, 13h56

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