Afficher 1 image en php
Bonjour,
je veux afficher une image stockée dans une base de données
voici le code que j'utilise
mais ca na pas marcher!
<?php
include("connection.php");
$req="select* from produits";
$res=mysql_query($req);
$donnees=mysql_fetch_array($res);
$type=$donnees['type_image'];
header("content-type:$type");
header("Content-transfer-encoding: ".$donnees[3]);
echo $donnees[3];
?>
merci
je veux afficher une image stockée dans une base de données
voici le code que j'utilise
mais ca na pas marcher!
<?php
include("connection.php");
$req="select* from produits";
$res=mysql_query($req);
$donnees=mysql_fetch_array($res);
$type=$donnees['type_image'];
header("content-type:$type");
header("Content-transfer-encoding: ".$donnees[3]);
echo $donnees[3];
?>
merci
Configuration: Windows XP Internet Explorer 6.0
5 réponses
-
Quel est le type de ta donnée représentant ton image dans la base de données ?
-
Pourquoi tu utilises pas du HTML?
-
Je ne sais pas ce que contiens ton include "connexion.php", mais un header php doit être déclaré AVANT que tout code html ait été écrit. Même un simple espace ou un retour à la ligne en début de script empêche le header de s'exécuter.
-
-
-
@IrresistibledemonSi moi j'utilise toujours fetch_array comme ça et j'ai jamais eu de problème. Reste à savoir si la connexion à la DB est bonne et s'il ne fait pas d'erreur de champ et de sélection. ;)
-
@X-FanEt que c'est bien un fichier dans la BDD et non pas un chemin.
-
@IrresistibledemonNon mais tu peux pas mettre une fichier dans une BD de toute façon. Donc c'est forcément un chemin. Maintenant, il faudrait qu'on connaisse le contenu de la BD pour savoir si la logique de ce qu'il a écrit est valide. :P
J'ai beaucoup de "chemin" dans ma BD moi et j'utilise fetch_array pour le récupérer parfois. Je pense que son chemin n'est pas correct si ça ne marche pas. Il faudrait voir avec lui mais il ne semble pas vouloir se manifester XD
-
-
Si il est possible de stocker des fichiers dans une base de données, je suis presque sûr qu'il existe un type "binary" ou quelque chose comme ça que l'on peut donner à un champ MySQL
-
Tu peux donner le type binary je pense. Mais le but d'une BD c'est pas de stocker des fichiers. Si tu remplis ta BD de fichiers et qu'elle devient grosse, elle devient plus longue à parcourir etc. Le but d'une base de données c'est de stocker des données, pas des fichiers. Le FTP est là pour ça et je pense qu'il n'y a rien de plus idiot que de stocker des fichiers dans une BD. Je n'ai jamais vu nul part que c'était possible. Si tu trouves quelque chose à ce sujet, n'hésite pas à nous montrer (juste pour voir, ça me plait d'apprendre des trucs même si ça sert à rien :P ).
-
-
Ah voilà, j'ai enfin retrouvé, je savais que j'avais vu ça quelque part ! C'est donc techniquement réalisable mais de fait déconseillé pour cause de lourdeur (c'est vrai que l'utilité n'est pas flagrante, peut-être pour de touts petits logos ??)
Voilà pour assouvir ta soif de curiosité : https://openclassrooms.com/fr/courses
Sinon je suis bien d'accord avec toi qu'il est mille fois plus efficace de stocker le chemin et non l'image :).