[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:
1 2 3 4 5
| iVBORw0KGgoAAAANSUhEUgAAAKgAAACZCAYAAAC7bXG8AAAABGdBTUEAALGOfPtRkwAAACBjSFJ
NAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAA8tklEQVR4Xu19B3dUR7Yu2G
RJiCCSCAIEAgVAKIByAGUhIZCEyDkHgcgmmWx7bIMNxh6bmXkTHGbmvrkOc9+77641a9135733u
/b7vuquVvXpOqdPt1og7GOvWi26T++uU+erXVX722H8uHHjBC34LxiBMTsCBKjvlpU1R8o2VEhH
11bZve+Q7D98TPYePBq0YAxiMLDnwGHp6Ru |
Si je fait:
Code:
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:
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:
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é :aie:
Si quelqun a une petite idée car la je seche un peut :roll:
Merchi d'avance.