Telechargement d'image et stockage

Fermé
mazzette Messages postés 33 Date d'inscription vendredi 28 juillet 2006 Statut Membre Dernière intervention 9 juin 2007 - 23 mai 2007 à 11:53
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 10 juin 2007 à 12:54
bjr,

J'ai réalisé un formulaire en PHP permettant de télécharger des images.
Cependant je souhaiterais stocker les images dna une table
Je sais que c'est possible mais j'aurais besoins de quelques conseils

(les images : ce sont des logos juste pas de photo)

Merci

1 réponse

ACNet Messages postés 64 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 24 novembre 2007 14
29 mai 2007 à 01:41
Bonjour,

les images sont généralement stockées dans des champs de type BLOB.
Pour te donner plus d'informations, il faudrait savoir quel SGBD tu emploies.

si ta base de donnée supporte cette fonctionnalité, il te suffit normalement de stocker le contenu de ton image (file_get_contents) dans une variable, que tu inséreras dans un champ de type blob.

Je te déconseille cependant fortement de stocker des images dans une base de données, il est souvent bien plus interessant de stocker uniquement le chemin d'accès à ces images.

Si tu as besoin d'informations supplémentaires, n'hésites pas.
0
mazzette Messages postés 33 Date d'inscription vendredi 28 juillet 2006 Statut Membre Dernière intervention 9 juin 2007 3
9 juin 2007 à 13:06
br,

Pourrais tu m'expliquer la démarche pour stocker les images dans une base de données, le chemind"accès d fichier ?


parce que j'ai tenté plein de truc mai je ni arrive pas et j'ai ma sotenance mardi du coup je sui en pleine panique...

Voici un exemple de page contenu dans le back office (je dois mettre un champ de fichier dans chacune de pages pour permettre la possibilité de joindre un fichier au formulaire)


Par exemple :

La page Partenaires liste les partenaires dans un tableau. La table contient les champs suivant Logo , dénomination, description et site web
Donc la page Partenaires contient ces champs dans un tableau
La page Ajout Partenaires est un formulaire contenant un champs de fichier pour le logo , un champ texte pour la dénomination, un champ zone de texte pour description et un champ texet pour site plus un bouton ajouter et réinitialiser
La je ne sais pas comment enregistrer le nom du fichier dans la table et je ne sais pas si dans la page Partenaires il m'affiche l'image ou juste le nom du fichier
Ensuite pour afficher l'image dans le front office, j'ai fait un espace de champ image pour kil m'afficeh l'image mais cela ne fonctionne pas
Comment dois je faire ?
Faut'il que je fasse un formulaire contenant juste les chamsp denomination, description et site web dans lequel je place un sous formulaire pour le champ de fichier ou d'image ?

Merci
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 921
9 juin 2007 à 16:34
salut,

soit tu as un champ de la bdd (de type blob) dans lequel est stocké l'image en binaire, cette méthode est déconseillée.
soit tu as un champ texte ou est stocké l'url de l'image.

par exemple :
le champ url = "images\image_01.jpg"
et sur ton serveur il y un dossier nommé "images" qui contient le fichier "image_01.jpg".
mais ce fichier il faut que tu l'ai envoyé (upload) sur le serveur par un ftp ou par un formulaire http.

pour l'upload via http : vive la faq et un tuto.

bon courage.
0
mazzette Messages postés 33 Date d'inscription vendredi 28 juillet 2006 Statut Membre Dernière intervention 9 juin 2007 3 > Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016
9 juin 2007 à 20:40
Merci mathieu,
J'ai décidé de placer dans la table le chemin du fichier
donc jé créé ma page ajout dans laquelle est placé un champ de fichier

pour l'upload j'ai repris le code du tuto ... mais il m'affiche ceci :

Warning: move_uploaded_file(img/1.gif): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\oe\admin\upload.php on line 32

Warning: move_uploaded_file(): Unable to move 'C:/Program Files/EasyPHP1-8\tmp\php1B.tmp' to 'img/1.gif' in c:\program files\easyphp1-8\www\oe\admin\upload.php on line 32
Echec de l'upload !

mai je vois pas mon erreur... du moin je la comprend pas
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 921 > Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016
10 juin 2007 à 12:54
salut,

ba vi ! tu n'utilises pas la fonction move_uploaded_file() comme il faut.
à savoir :
move_uploaded_file ( nom_dufichier, destination )

donc forcement i' veut pas !!!
-;o)

dans le tuto on te montre qu'il faut utiliser le nom du fichier temporaire $_FILES['avatar']['tmp_name'] ou 'avatar' est la valeur de l'attribut 'name' du <input>.

si en html tu as ça :
<input type="file" name="fichier">

en php, tu le traiteras avec :
move_uploaded_file($_FILES['fichier']['tmp_name'], 'img/1.gif')


voili, voila.
0