Page 1 sur 1

photos et phpmyadmin

Posté : 27 août 2006, 14:48
par guicc
Bonjour a tous,

Je suis débutant en php (je viens de me tapper tout le bouquin php 5 avancé mais je n ai pas de pratique). je vous explique sur quoi je planche depuis hier soir :( Je suis en train de me créer mon site de véhicule d'occasion et je voudrais stocker, a chaque fois, six photos d'un véhicule. J ai trouvé comment les inserer directement dans ma base avec phpmyadmin mais ce que je vroudrai faire, c est les stoker dans un fichier et enregistrer le chemin d acces a ce fichier dans ma base. Comment faire ? Quels type de champ dois je utiliser ? Et, après, quand je ferai "Inserer" comment devrais je ecrire le chemin ?

Merci de votre, precieuse, aide..

Posté : 27 août 2006, 14:56
par ouckileou
Un chemin c'est une simple chaîne de caractères, tu peux donc utiliser n'importe quel type texte pour ta colonne.

Seulement, pas besoin d'utiliser un LONGTEXT pour une chaîne qui fera entre 10 et 30 caractères.

Tu peux ensuite ne stocker dedans que le nom du fichier image (DC0003456.jpeg par exemple) et utiliser une constante, une variable de config dans tes scripts pour ajouter le chemin vers le répertoire de stockage.

Stocker un chemin vers une photo, c'est exactement la même chose que stocker un nom, une adresse etc. ;)

Regarde les différences entre les types texte ici : http://dev.mysql.com/doc/refman/5.0/fr/ ... types.html

Posté : 27 août 2006, 15:06
par guicc
Merci, pour ta reponse rapide, ouckileou.

J ai bien compris concernant le "type" de donnée a integrer dans la base mais par contre, ta reponse "Tu peux ensuite ne stocker dedans que le nom du fichier image (DC0003456.jpeg par exemple) et utiliser une constante, une variable de config dans tes scripts pour ajouter le chemin vers le répertoire de stockage." reste flou. Peux tu m eclairer en me donnant un exemple concret. Moi, par exemple, sur mon serveur local, j ai une image : C:\Program Files\wamp\www\site_stone\images_site_stone\DSC00002.JPG. ue dois je mettre dans ma base de donnée comme chemin et comment dois je l ecrire ?

Merci

Posté : 27 août 2006, 15:15
par ouckileou
En admettant que toutes tes photos soient dans le même répertoire, ça ne sert à rien de le stocker dans chaque ligne de ta base de données.
Tu ne vas stocker que ce qui change, c'est à dire le nom du fichier :

Petit exemple :
// on stocke le chemin vers le répertoire ici pour pouvoir ne le modifier qu'une fois au cas où
$rep_images = "C:\Program Files\wamp\www\site_stone\images_site_stone\\"; 

// requête SQL pour sélectionner les noms d'images stockés en Bdd
$requete = "SELECT nom_image FROM images"; 
$exec = mysql_query($requete) or die(mysql_error()); 
while ($images = mysql_fetch_assoc($exec)) { // tant qu'on a des résultats, on affiche les images en HTML
   echo '<img src="';
   echo $rep_images.$images['nom_image']; // on concatène le chemin et le nom du fichier
   echo '" /><br />';
}

Posté : 27 août 2006, 15:55
par guicc
Merci encore une fois.. :)

Tu m as bien eclairé mais il faut que je me mette au boulot et là, c est plus delicat :)

A bientot