conseils pour gérer des images avec mysql

Eléphanteau du PHP | 29 Messages

03 janv. 2006, 17:32

j'ai une base de données de produits, j'ai une table avec les produits (id, nom, designation, prix ....) et une table images ou je stocke les images de chaque produit,
en trainant sur internet , j'ai vu que la méthode la plus efficace et performante serait de stocker le chemin de l'image dans le champ nom_image par exemple au lieu de stocker directement l'image dans la BDD.

J'ai une page php ou j'affiche tous les attributs d'un produit et l'image du produit, comment l'inclure dans ma page ?
<img src=" ???

merci pour vos conseils :)

ViPHP
ViPHP | 649 Messages

03 janv. 2006, 17:56

en trainant sur internet , j'ai vu que la méthode la plus efficace et performante serait de stocker le chemin de l'image dans le champ nom_image par exemple au lieu de stocker directement l'image dans la BDD.
C'est pas que c'est la meilleure méthode, c'est que c'est la seule :wink:

C'est tout simple, il te suffit de récupérer les données de la base de manière traditionnelle, puis de faire un echo:
<?
mysql_connect("localhost", "root", "");
mysql_select_db("database");

$retour = mysql_quey("SELECT * FROM table");
while ($dretour = mysql_fetch_array($retour))
{
echo '<img src="' . $donnees['chemin_image'] . '" alt="image de la bdd" />';
}
mysql_close();
?>
Tu as qu'à remplacer les infos de connexion, les noms de tables et les champs et puis voilà :)
Image

Avatar du membre
ViPHP
ViPHP | 3008 Messages

03 janv. 2006, 17:59

Stocker le chemin est en effet une meilleure idée que de stocker l'image en elle-même.

Si tu ne stockes que le chemin de ton image, il te suffit de récupérer la valeur et de le mettre dans la balise <img>.
<img src="<?php echo $chemin?>.gif" border="0">
ou bien si tu stockes l'extension en même temps que le chemin :
<img src="<?php echo $image?>" border="0">

Eléphanteau du PHP | 29 Messages

03 janv. 2006, 18:31

merci pour votre aide , je vais essayer et je vous tiens au courant

ViPHP
pjl
ViPHP | 2119 Messages

04 janv. 2006, 22:25

en trainant sur internet , j'ai vu que la méthode la plus efficace et performante serait de stocker le chemin de l'image dans le champ nom_image par exemple au lieu de stocker directement l'image dans la BDD.
C'est pas que c'est la meilleure méthode, c'est que c'est la seule :wink:
Ce n'est pas la seule méthode.
Rien n'interdit de stocker des images dans une BDD.
Il faut juste en avoir l'utilité et bien en comprendre le principe.

ViPHP
ViPHP | 649 Messages

04 janv. 2006, 22:27


Ce n'est pas la seule méthode.
Rien n'interdit de stocker des images dans une BDD.
Il faut juste en avoir l'utilité et bien en comprendre le principe.
Là, tu me surprends... Par contre, j'en vois pas l'utilité et je ne comprends pas le principe alors c'est pas pour moi :lol:
Image

Mammouth du PHP | 19672 Messages

04 janv. 2006, 23:22


Ce n'est pas la seule méthode.
Rien n'interdit de stocker des images dans une BDD.
Il faut juste en avoir l'utilité et bien en comprendre le principe.
Là, tu me surprends... Par contre, j'en vois pas l'utilité et je ne comprends pas le principe alors c'est pas pour moi :lol:
Ben si, tu pourrais stocker des images au format binaire dans une base de données : techniquement, c'est parfaitement valide: mais si tu stockes quelques milliers de photos comme ça et que tu t'amuses à faire un SELECT *, tu risques d'avoir des surprises ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 29 Messages

05 janv. 2006, 09:07

j'ai choisi de mettre le chemin de l'image dans la base de données, ça marche impec, merci a tous