Page 1 sur 1

enregistrement d'image en db

Posté : 09 mars 2008, 15:55
par BeRoots
salut à tous :)

j'ai remarquer 3 champs supplementaire sur le phpmyadmin chez mon hebergeur (MIME/type, transformation et transformation options)... je suis en train de voir pour mettre à jour mon phpmyadmin afin de disposer de ces options en local. je suppose en avoir besoin pour enregistrer des images en db.

Le truc que je souhaite faire en fait, c'est d'enregistrer des image en db. pour le moment je faisait en fait qu'enregistrer des balise images html de ces images à inserer.


1°) je souhaiterai deja savoir si il est possible d'enregistrer les images même en db (fichier) ?
2°) si oui, comment procede t'on pour afficher sur un site une image enregistrer en db?


Merci d'avance pour vos conseils ;)

Posté : 09 mars 2008, 16:49
par iclo
C'est possible d'enregistrer des images en base de données, mais c'est dans la majorité des cas, fortement déconseillé : la taille de la base de donnée devient vite très importante.
La solution de mémoriser le nom du fichier en base et le fichier en lui-même dans un répertoire est souvent préférable.

Il faudrait que tu nous en dise un peu plus.

Posté : 10 mars 2008, 14:44
par Ryle
Effectivement, à moins d'avoir besoin d'effectuer des traitement ou des recherches de teintes, de couleurs, de luminosité ou de constraste sur une image, il n'y a pas un grand intérêt de la stocker dans la base. Les performances pour récupérer une image dans la base plutôt que dans un dossier sont nettement moins efficaces...

Quoi qu'il en soit, Pour l'y enregistrer, il te faut un champ de type BLOB, dans lequel tu pourras stocker le flux (ou la chaine) de ton fichier (que tu peux par exemple obtenir avec les fonctions php imageCreateFrom*).
Pour l'afficher, c'est la procédure inverse, tu créer une image à partir de la chaine que tu as stockée en base (imageCreateFromString()) et tu la retournes vers le navigateur pour qu'il l'affiche comme s'il s'agissait d'un fichier statique.

Il est donc très fortement recommandé - à moins que ta vie et celles des habitants de Los Angeles, ou de toute autre grosse aglomération américaine, n'en dépendent - de stocker tes fichiers sur le disque du serveur et de n'enregistrer en base que le chemin pour y accéder (et éventuellement le poids, la date de maj ou autre info qui pourraient t'être utiles et qui t'éviteraient de devoir aller consulter le fichier) ;)

Posté : 13 mars 2008, 11:45
par BeRoots
hmmmm fort interesant cette extension GD :)

1°) je me demande part contre ce qui est le mieux entre GD et Imagick ?

2°) et pour ce qui est de créé une chaine depuis une image, j'ai pas trop compris...

si quelqu'un peut me conseiller ;)

EDIT: je m'égard du theme du forum sql donc je ferme et je vais voir sa du coté de php5 ;)

encore merci :)