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 :

Include ou BDD ?


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut Include ou BDD ?
    Bonjour,

    Je dois créer un site vitrine contenant une cinquantaine de produits (titre, description, photos...) classés par catégorie avec un moteur de recherche.
    J'aimerai savoir quelle est la meilleure méthode pour développer un tel site (performance, sécurité, simplicité de mise à jour). Je ne souhaite pas utiliser de CMS.

    Est-il préférable de créer autant de page que de produits et utiliser la fonction include pour les parties fixes?
    Ou bien stocker directement le contenu HTML dans une base de données MySQL?
    Ou encore, faut-il stoker dans la base de données uniquement l'adresse de la page à inclure?

    Merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    il vaut mieux enregistrer les données des produits dans une base de données (d'où le nom ) et ensuite tu auras une page PHP qui lis la base de données et qui affiche les informations du produit
    en faisant comme ça tu n'auras qu'un fichier à modifier si tu veux modifier la présentation des informations

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Comment structurer le contenu stocké dans la base de données (je parle de balise pas de css)? Faut-il mettre en place un système de balises BB?

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    Citation Envoyé par rumpeballe
    Comment structurer le contenu stocké dans la base de données (je parle de balise pas de css)? Faut-il mettre en place un système de balises BB?
    il ne faut pas mettre de balises dans la bases de données seulement les données pures. C'est la page en PHP qui s'occupe de prendre les données et de créer la page html avec les données bien présentées

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Citation Envoyé par mathieu
    il ne faut pas mettre de balises dans la bases de données seulement les données pures. C'est la page en PHP qui s'occupe de prendre les données et de créer la page html avec les données bien présentées
    Comment faire alors pour avoir une liste dans la description du produit? Ou bien mettre une parti du texte en gras ou encore ajouter une petite image dans le texte?

  6. #6
    Membre émérite
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Par défaut
    repenser la façon dont tu structures ta base

    pour la description par exemple, tu fais un champ "description" dans ta BD et dedans tu y entres tous les éléments que tu veux voir apparaître, séparés par un caractère donné (retour chariot par exemple)
    à toi ensuite de gérer ça en php après lecture de la BD pour faire la mise en forme qui va bien pour le rendu html
    Dia [ Page DVP ] [ Site pro ]

  7. #7
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    Citation Envoyé par rumpeballe
    Comment faire alors pour avoir une liste dans la description du produit? Ou bien mettre une parti du texte en gras ou encore ajouter une petite image dans le texte?
    si, par exemple, tu veux mettre une information en gras, cela veut dire que cette information est importante et donc elle mérite un champ séparé de la description.
    idem pour l'image, tu peux rajouter un champ supplémentaire pour l'image

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Citation Envoyé par mathieu
    si, par exemple, tu veux mettre une information en gras, cela veut dire que cette information est importante et donc elle mérite un champ séparé de la description.
    idem pour l'image, tu peux rajouter un champ supplémentaire pour l'image
    Grosso modo voici les informations à structurer :

    norma_fr.pdf

    Difficile d'intégrer tous ca dans une table produit sans mettre de balise dans les champs.

  9. #9
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    Citation Envoyé par rumpeballe
    Grosso modo voici les informations à structurer :

    norma_fr.pdf

    Difficile d'intégrer tous ca dans une table produit sans mettre de balise dans les champs.
    ok en fait on te demande de te raprocher au maximum de quelque chose qui existe déjà

    maintenant ça dépend de la compléxité que tu peux atteindre avec ce que tu veux faire et donc ça dépend du temps.
    S'il s'agit d'un stage de 3 mois pour produire du code qui sera utilisé tel quel et plus trop modifié alors là en effet tu peux un peu oublier les principes de structuration de base de données.
    Par contre si tu as toute une année pour faire ça, tu peux te permettre de prendre plusieurs semaines pour réfléchir à la base de données, analyser les types de données qui sont à stocker, modéliser les objets qui seront utilisés dans ton application.

  10. #10
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Par défaut
    tout le monde dit que ce n'est pas bien, mais personnellement je ne me gêne pas pour insérer parfois des balises html dans mes tables

    cela fonctionne très bien et je ne vois pas où est le problème, sinon d'être puriste...

    maintenant, si tu peux isoler un principe d'affichage répétitif dans tes descriptions, je pense qi'il est préférable de faire plusieurs champs

    exemple : matériau, isolation, capacité, etc dans un champ et le descriptif de chacun dans un autre champ
    par contre, norma dans le texte simple volume sur modèle norma peut, à mon avis, nécessiter des balises html dans la base

  11. #11
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Citation Envoyé par Dia_FR
    pour la description par exemple, tu fais un champ "description" dans ta BD et dedans tu y entres tous les éléments que tu veux voir apparaître, séparés par un caractère donné (retour chariot par exemple)
    Je ne suis pas d'accord. Si des données sont de nature différente, elles doivent être stockées dans des champs différents. C'est le principe d'atomicité des données.

  12. #12
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    Citation Envoyé par francis m
    cela fonctionne très bien et je ne vois pas où est le problème, sinon d'être puriste...
    oui ça fonctionne très bien, d'ailleurs le découpage en champs n'est pas reservé aux puristes puisque toi aussi tu avoues plus bas faire des découpage

    comme je disais plus haut, suivnat le degré de complexité de l'application, on peut plus ou moins pousser l'analyse et la décompistion des champs
    plus on applique les régles de découpage et plus l'application devient complexe et mets du temps à être développée mais plus la maintenance et la résolution de bug est facilité.
    Il faut aussi savoir que la décomposition parfaite n'existe pas, c'est pour ça que qu'on parle de POO qui veut dire "orientée" objet donc on essaye de s'en approcher sans jamais l'atteindre

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Bonsoir à tous et merci à tous pour vos réponses. Ca m'aide à y voir un peu plus clair.
    Vu la diversité des produits il va être difficile de créer une table produits intégrant toutes les caractéristiques de chacun.
    Donc voilà comment je compte organiser ma table produits :
    id_produit (tiny_int)
    categorie (varchar 255) 'défini la famille de produit. Ex.: réservoirs
    nom (varchar 255) 'défini le nom du produit. Ex.: Norma
    description (text)
    caractéristiques_techniques (text)
    Dimensions (text)
    Specificités (text)
    brochure (varchar 255) 'URL du fichier PDF de la brochure
    notice (varchar 255) 'URL du fichier PDF de la notice de montage
    photo1, photo2, photo3, photo4 (varchar 255) 'URL des images

    Dans les champs text j'ajouterai quelques balises mais pas trop pour ne froisser personnes

    Voilà, pouvez-vous me dire si ca vous semble a peut près correct?

  14. #14
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    As-tu obligatoirement 4 photos, ou est-ce un maximum ?
    1) Toujours 4 photos => la structure est bonne.
    2) 4 photos maximum => tu dois utiliser une 2e table pour les photos.

  15. #15
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 297
    Par défaut
    n'étant pas un défenseur de la base de donnée, est comme tu n'as que très peut de produit à proposé, je te conseil plutôt d'utiliser des fichiers.

    Tout simplement parce que ça ne nécessite pas de service supplémentaire sur ta machine.
    De plus, tu auras plus facilement et rapidement à faire les sauvegardes et les restaurations.

    Maintenant, comme dirais tout défenseur de la Base de donnée,
    :p à toi de réinventer la roue!

    Je te conseil de crée un site type, qui te permettra en fonction des différents valeurs des produits de changé la page.

    Il te suffit (si tu veux faire simple) de crée des répertoires qui porte le nom des produits, ou des catégories à laquelle ils sont affecté, pour ensuite faire un listage des contenues du répertoire.

    C'est simple, très court à faire.

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 28
    Par défaut
    Citation Envoyé par juJuv51
    Je te conseil de crée un site type, qui te permettra en fonction des différents valeurs des produits de changé la page.

    Il te suffit (si tu veux faire simple) de crée des répertoires qui porte le nom des produits, ou des catégories à laquelle ils sont affecté, pour ensuite faire un listage des contenues du répertoire.

    C'est simple, très court à faire.
    Merci pour ta réponse. Peux-tu me donner plus de détail sur ta méthode? Y'a-t-il un tutoriel qui explique comment faire ça?

Discussions similaires

  1. portabilité et BDD
    Par delire8 dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/07/2002, 10h59
  2. connection a une BDD MySql
    Par delire8 dans le forum MFC
    Réponses: 7
    Dernier message: 19/06/2002, 18h18
  3. [BDD] Enregistrer le résultat d'une requête
    Par Mowgly dans le forum C++Builder
    Réponses: 5
    Dernier message: 19/06/2002, 15h26
  4. Probleme de filtre dans bdd
    Par scorpiwolf dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/06/2002, 10h43

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