insérer une image dans une BdD

alex01

Membre enregistré
22 Septembre 2003
3
0
Bonjour,

J'essaye de développer une base de données où je présente des produits, mais je ne sais pas comment intégrer les images..

Ce que j'aimerai, c'est faire comme sur un site marchand, c'est à dire faire des requetes selon des critères qui appellent des produits avec la description du produit mais aussi son image.

Est ce qu'on peut faire un lien dans la base qui appelle une image à l'affichage ? (/images/image1.jpg ??)

en fait que je sais pas bien si je dois développer le site en php ou bien dans un autre langage.
 
Première question, tu utilises quoi comme base de données ?!?!??

Par exemple, avec une base de données Oracle, il existe le type BLOB (Binary Large OBject) pour ça.

Sinon, si ta base ne propose pas ce type de données, tu peux très bien mettre tes images dans un répertoire bien précis et ne conserver que le nom du fichier dans la base de données...
 
Ca fait peut-etre beaucoup une base de donnée Oracle non ?? Surtout que l'install n'est pas a la porte du premier venue !! et je parle en connaissance de cause...
 
Marcus a dit:
Ca fait peut-etre beaucoup une base de donnée Oracle non ?? Surtout que l'install n'est pas a la porte du premier venue !! et je parle en connaissance de cause...
Tout dépend des besoins :cool:

Et comme alex01 ne donne aucun indice, je parle de ce que je connais !

Pour l'installation, je laisse faire, moi je fais que l'utiliser :D
 
alex01 a dit:
Bonjour,

J'essaye de développer une base de données où je présente des produits, mais je ne sais pas comment intégrer les images..

Ce que j'aimerai, c'est faire comme sur un site marchand, c'est à dire faire des requetes selon des critères qui appellent des produits avec la description du produit mais aussi son image.

Est ce qu'on peut faire un lien dans la base qui appelle une image à l'affichage ? (/images/image1.jpg ??)

en fait que je sais pas bien si je dois développer le site en php ou bien dans un autre langage.

Je suis moi-même en train de me former (un peu plus sérieusement que le butinage auquel je me livrais jusque-là) au couple PHP-MySQL. Je ne vais donc pas prétendre résoudre tes problèmes, mais, pour le peu que tu dis, PHP-MySQL me parait tout indiqué. Logiquement tu dois avoir le nom de ton fichier image stocké dans la base (dans une ligne de ta table Produits) ainsi que le chemin du dossier images (dans une table de configuration générale, par exemple). La concaténation des 2 te donne le chemin à insérer dans un script d'affichage. Mais il faut bien sûr déjà créer un script d'upload au préalable.
 
Pour MySQL, il est peut-être possible d'insérer des images dans ta BD avec le type BLOB (Binary Large Object) :
http://dev.mysql.com/doc/mysql/en/BLOB.html

Mais je ne sais pas si c'est l'idéal.. ça demande de prendre les images, de les convertir en un flux binaire de données, puis de faire l'opération inverse lorsque tu veux les utiliser.
La solution proposée par d'autres de ne stocker que le nom de l'image est bien aussi.
 
"Je suis moi-même en train de me former (un peu plus sérieusement que le butinage auquel je me livrais jusque-là) au couple PHP-MySQL. Je ne vais donc pas prétendre résoudre tes problèmes, mais, pour le peu que tu dis, PHP-MySQL me parait tout indiqué. Logiquement tu dois avoir le nom de ton fichier image stocké dans la base (dans une ligne de ta table Produits) ainsi que le chemin du dossier images (dans une table de configuration générale, par exemple). La concaténation des 2 te donne le chemin à insérer dans un script d'affichage. Mais il faut bien sûr déjà créer un script d'upload au préalable."

A mon avis, je suis sur la bonne voie.... C'est effectivement PHP-MySQL que j'utilise. et j'aimerai comprendre comment on configure le chemin du dossier image dans la table de configuration générale.

Je sens que je suis tout proche du but...
 
C'est pourtant pas ce qui me paraît le plus dur, ça. Si tu ne le change pas régulièrement, tu peux même le rentrer directement avec phpMyAdmin,par exemple. (http://monsite/images/). Sinon il faut faire un simple formulaire en PHP qui te sert de panneau d'administration pour dialoguer avec ta table "Général" ou "Admin" ou "comme tu veux" ;)
 
Une chose importante est de ne pas stocker le chemin d'accès complet dans ta base de données, car sinon le jour où tu changes de nom de domaines, tu l'auras dans l'os.
Le plus simple est donc de stocker le nom de l'image (par ex. : monimage1.gif) dans ta BD, puis lorsque tu veux l'afficher, tu reconstruis l'URL avec ça.
 
alex01 a dit:
Bonjour,

J'essaye de développer une base de données où je présente des produits, mais je ne sais pas comment intégrer les images..

Ce que j'aimerai, c'est faire comme sur un site marchand, c'est à dire faire des requetes selon des critères qui appellent des produits avec la description du produit mais aussi son image.

Est ce qu'on peut faire un lien dans la base qui appelle une image à l'affichage ? (/images/image1.jpg ??)

en fait que je sais pas bien si je dois développer le site en php ou bien dans un autre langage.

Tu as plusieurs option soit l'image est contenu dan la DB

1 -sous forme de liens

exemple images.php?id=12121
ca te laisse la liberté d'organiser le file system comme tu l'entends pour deployer tes ressources

2 - tu stores en HEX
3 - tu stores en full Ascii
4 - tu stores en base64

si tu stores la ressources je te conseil HEX

mais sachant que la premiere solu est la plus souple si les images doivent changer

il est preferable de les generer avec un id