IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

[Conception] Stockage des images en base OUI / NON ?


Sujet :

PHP & Base de données

  1. #1
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut [Conception] Stockage des images en base OUI / NON ?
    Bonjour

    Tout d'abord, désolé pour ce POST qui doit surement exister par ailleurs mais faire une recherche sur "base" et "image" c'est pas super pertinent ...

    Du coup je RE-RE-RE-....-POST

    Bref, je me heurte souvent à des problèmes de droits pour écrire ou supprimer des fichiers sur les hébergeurs ...

    Je me pose la question du stockage en base des images ...

    Quel impacte sur le site ? Rapidité, volume de la base ...

    Tous les Retex m'intéressent ...

    Merci.

  2. #2
    Membre habitué Avatar de M1000
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Novembre 2003
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2003
    Messages : 201
    Points : 186
    Points
    186
    Par défaut
    Bonjour,


    Pour ma part je déconseille très fortement le stockage des images dans la base de données pour ces raisons:
    - Trop lourd a gérer.
    - Manque de rapidité (si beaucoup d'images qui plus est si elle sont lourdes)

    Les images dans un rep, leurs propriétés (type, taille, auteurs... et bien sur "leur lien") vers le rep dans la BDD

  3. #3
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    Je suis d'accord avec M1000 : l'utilisation de fichiers comporte plus d'avantages que d'inconvénients...
    En ce qui concerne le principal avantage d'un stockage en base de donnée, à savoir éviter les problèmes de droits d'écriture, je vous ferais remarquer que peu d'hébergeur autorisent une base de plus de 100 Mo, ce qui est très peu si on insère des images dans la BD.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut
    Si je dis pas de bétise (mais je suis pas sûr) même quand on stocke des images dans une base de données, on doit les enregistrer dans un répertoire sur le serveur avant de pouvoir s'en servir. Ce qui ramène au même problème de droit d'écriture.

  5. #5
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    Tu dis une bêtise
    En fait, tu a le choix de stocker juste le chemin d'accès à ton image en BD (je pense que c'est ce que tu veux dire), ce qui est la bonne méthode à mon sens, et stocker le code binaire de l'image en BD (ce qui est maaaâaaal)

  6. #6
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    La plupart des hebergeur autorise l'ecriture.

    Et si tes images ne sont pas trop volumineuse, il n'y aucun mal à y stocké tes images, ça peut être plus simple si tu veux faire un dump de la base, ça t'évite d'allez chercher tes images en même temps.

    Mais bon... Aprés c'est à toi de voir comment sont géré les droit sur le server qui heberge ton site.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 124
    Points : 77
    Points
    77
    Par défaut
    En fait, ce que je voulais dire, c'est que quand tu stockes le code binaire d'une image dans une base de données, tu dois ensuite l'enregistrer dans un répertoire du serveur avant de pouvoir l'afficher dans une page, et donc que des problèmes de droit d'écriture se poseront quand même.
    C'est ça la bêtise que je voulais dire. Si s'en est une ça veut dire qu'on peut utiliser une image stockée dans une base de données sans jamais l'enregistrer dans un répertoire du serveur.

  8. #8
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    Non c'est vrai que tu es obligé de la stocker temporairement sur le serveur.
    D'ailleurs, si tu ne pense pas à l'effacer par récupération dans ta page html, elle reste sur le serveur.

  9. #9
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    ?
    ben non, on est pas obligé de faire ça, enfin je ne pense pas... Il suffit de faire un petit script qu'on appelle dans la balise image, par exemple <img src="getImage.php?id_image=xx" alt='' />
    Après il ne faut pas oublier de mettre les headers qui vont bien, etc, mais bon ce n'est pas très compliqué à mettre en place.

  10. #10
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    ?
    ben non, on est pas obligé de faire ça, enfin je ne pense pas... Il suffit de faire un petit script qu'on appelle dans la balise image, par exemple <img src="getImage.php?id_image=xx" alt='' />
    Après il ne faut pas oublier de mettre les headers qui vont bien, etc, mais bon ce n'est pas très compliqué à mettre en place.
    Je confirme ^^

    Sinon pour ce qui est des droits des répertoires c'est clair que ca peut être la galère sur certains serveurs, je crois que la solution de base est de mettre le rép parent en 777 temporairement depuis l'uid ftp puis de créer le rép images depuis l'uid php. Perso j'ai jamais stocké d'images en BDD mais je verrais plusieurs questions à se poser :

    - taille limitée de la base ? (avec une BDD de 15 mo tu vas pas loin )
    - une ressource de type getImage.php?id_image=xx est-elle gardée en cache par le navigateur ? si c'est pas le cas et qu'il y a un quota de traffic ca peut vite grimper. Ca ralentit également l'accès au site.

  11. #11
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut
    J'ai pas de projet bien précis en tête et donc pas de données réelles ...

    Mais je suis tombé sur un projet où les images étaient base et donc quand on supprime un enregistrement on supprime aussi les images ...

    Y'a quelques avantages quand même mais c'est un projet Intranet ...
    Je me demandais si ça pouvait tenir la route en Internet ...

    Mais je crois comprendre que tous les avis vont dans le même sens ...


    Merci pour vos réponses .

  12. #12
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    A la question "est-ce que ça tiens la route" : oui, bien sûr, pourvu qu'on ai de la place sur le serveur sql... Tout dépend de ton hébergement.
    C'est vrai que pour la suppression d'enregistrement, c'est bien pratique de supprimer l'image en même temps, mais bon comparé aux avantages de la gestions par fichiers (récupération des infos, possibilité de connaitre le type mime -si tu as des gif et des jpeg mélanger tu fais comment en BD? ) ya pas photo ^^

  13. #13
    Membre averti Avatar de hisy
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 377
    Points : 353
    Points
    353
    Par défaut
    récupération des infos, possibilité de connaitre le type mime -si tu as des gif et des jpeg mélanger tu fais comment en BD?

    BEn dans la mesure ou je traite toutes les images proposées avant de les stocker en base, j'ai toutes les infos sur l'image en question ...

  14. #14
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    oui tout simplement, j'avais pas trop réfléchi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Conception] stockage des (noms de) photos ?
    Par BlindeKinder dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/11/2007, 01h53
  2. [Conception] Afficher des images
    Par sourie29 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/12/2006, 17h43
  3. Réponses: 3
    Dernier message: 19/09/2006, 15h36
  4. [Conception] Lier des fichiers à une base de données
    Par sandytarit dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 29/06/2006, 20h25
  5. [MySQL] Problème par rapport au tutoriel sur le stockage des images en base
    Par dark_vidor dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 25/09/2005, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo