Les Allergies
Alimentaires
Posez votre question Signaler

Mettre des images dans sa base de données

yohhann 35Messages postés 13 décembre 2006Date d'inscription - Dernière réponse le 11 avril 2012 à 22:58
Bonjour je souhaiterais mettre des image dans ma base de données pour pouvoir les afficher en fonction de la demande de l'internaute,
Mais on dit ( les voix du web lol) qe ça alourdit considerablement la base, alors à la place peut etre je pourais passer par des liens ftp pour mes images mais je ne sais pas comment faire quelqu'un pourait il me guidé svpppp
merci d'avance
Lire la suite 

Mettre des images dans sa base de données »

11 réponses
Réponse
+4
moins plus
Ce que je suggère, c'est de générer un nom aléatoire pour l'image (tu peux prendre le sha1 du chemin ou du nom par exemple), puis d'ajouter après certaines infos, comme les dimensions, comme ca tu peux les récupérer facilement pour l'affichage.
Par exemple, tu mets tes images dans un dossier /uploads/imgs/ et tu apelles chaque fichier sha1dunom-largeur-hauteur.ext
Comme ca, à l'affichage des images :
//on divise en 3 : 0:le chemin ; 2:hauteur ; 3:largeur
$InfosImages=explode('-',$CheminImage);

echo '<img src="',$CheminImage,'" style="width:',$InfosImages[2],'px;height:',$InfosImages[1],'px" alt="Texte alternatif" />';

Pour faire le formulaire, pense à des fonctions comme "move_uploaded_file" (pour stocker un fichier uploadé via formulaire je crois), "is_uploaded_file" (pour vérifier qu'on travaille sur un fichier uploadé), et toutes les fonctions avec "upload".

Pour des tutos, cherches "upload fichier formulaire", par exemple, tu trouveras surement facilement.
Ajouter un commentaire
Réponse
+1
moins plus
Salut.

Pour stocker directement des fichiers dans ta base, tu peux utiliser le type BLOB.
(stockage au format binaire)
Mais c'est inutile dans ce cas là.
A mon avis, il vaut mieux faire un service d'upload d'images, et dans la BDD, stocker diverses informations sur l'image (ID, nom, personne qui l'a uploadée, etc).

Tu peux ensuite stocker tes images dans un dossier uploads/images par exemple.
Ajouter un commentaire
Réponse
+1
moins plus
Salut,

Insérer des images directement dans sa base de donnée n'est vraiment pas top!
On cherchera plutot a y stocker son nom et son chemin d'accès vers son dossier d'upload ;)

Un petit tuto qui peut être utile :
http://webinfobazar.com/upload-dune-image-sur-un-ftp-php-sql/
Ajouter un commentaire
Réponse
+0
moins plus
oui voila c'est un truc comme ça que je voudrais faire, mais je ne sais pa du tout comment!
il faut que je creé un fichier ( par exple image_telechargé)
et qu'avec un form je mette mes image dedans? ensuite que je mette le liens sur ma base? enfaite je sais pas du tout comment m'y prendre!
tu veux bien m'eclairer?
Ajouter un commentaire
Réponse
+0
moins plus
ok merci je vais bosser sur tout ça ;) merci pour les infos
Ajouter un commentaire
Réponse
+0
moins plus
Non, si tu met le même nom, le sha1 peut-être le même
tu met l'id de l'image en nom de fichier, l'id est tout le temps différent :p
exemple
ID : 5
5.jpg
Ajouter un commentaire
Réponse
+0
moins plus
Salut.


Conan a raison, mais à mon avis il y a peu de chances que des images aient le même nom et les mêmes dimensions.
Tu peux rajouter un champ avec le poids aussi, comme ca tu es pratiquement sur d'avoir des noms de fichiers différents.

Si tu veux, j'ai fait ce script qui me permet d'avoir une chaine plus ou moins aléatoire (à partir d'un mot de passe) :
$MDPlong=strlen($_POST['mdp']);
$DebutCoupeChaineMDP=mt_rand(0,($MDPlong/2)-1);
$FinCoupeChaineMDP=mt_rand($MDPlong/2,$MDPlong);
$ChaineAleatoire=sha1(str_shuffle(substr($DebutCoupeChaineMDP,$FinCoupeChaineMDP,$_POST['mdp'])));
--
Sylvain
"Join us now, and share the software. You'll be Free, hackers."
ammmmmine- 11 avril 2012 à 22:58
sha1(time()) me semble mieux , non ?
Ajouter un commentaire
Réponse
+0
moins plus
Salut pour ton soucis j viens de terminer exactement s que tu cherche
etant donné que comme toi je n ai pas trouver de script pret.
Je resume:
formulaire avec l envoie du fichier un champs nom un champs auteur et un champ descriptif.
Envoie de l image sur le serveur a la racine du dossier mais possibilité de les envoyer ou bon vous semble en retouchant une ligne du script.
Et pour finir les infos contenu dans le formulaire sont recuperer et enregistrer sur la base dans la table envoie (modifiable aussi).
rym_nabeul - 26 mars 2007 à 11:20
Bonjour
s'il te plait j'ai besoin de savoir comment tu fais pour l'envoie de l image sur le serveur a la racine du dossier mais possibilité de les envoyer ou bon vous semble en retouchant une ligne du script.
merci
rym_nabeul
Ajouter un commentaire
Réponse
+0
moins plus
j'ai crée une base de donnée et je voudrais savoir comment je peux ajouter les images à la base de donnée et merci
Ajouter un commentaire
Ce document intitulé « mettre des images dans sa base de données » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?