Partage
  • Partager sur Facebook
  • Partager sur Twitter

une liste de liens dans un champ de BDD

la meilleure façon de faire ?

Sujet résolu
    2 décembre 2020 à 12:54:14

    Bonjour,

    voilà: j'ai un champ de ma table qui devrait contenir une liste de liens, plutôt un texte qui me permettra d'afficher ensuite une liste de liens sur un site !

    Donc ma façon de faire:

    des mots ( textes de liens ) séparés par des virgules , puis en php explode() ...l'utilisateur peut rentrer autant de liens qu'il veut, je rajoute une virgule devant chaque mots(/liens) avant de l'enregistrer en base! j'aurai un truc du genre:

    "lien1, lien2, lien3, ..."

    Mais si je veux un nom explicite ( rentré par l'utilisateur ) associé au lien ? Je peux rentrer un truc du genre:

    "nomdulien1"=> "lien1", "nomdulien2"=> "lien2", ..."

    qui restera un texte toujours découpé, par la suite, pour l'affichage dans la page web.

    Ou bien je peux mettre le chemin vers un fichier JSON que l'utilisateur pourra modifier comme il veut ?

    Je ne vois que ces deux façons de faire ( fonctions de mon niveau de PHP et BDD )

    D'où la question: quelle est la meilleure façon de faire  ( qui peut être autre que celles auxquelles j'ai pensé )

    Merci,

    Laurent.

    P.S: je pense aussi à une table qui contient les champs "nom" et "lien" !!! . Et une table d'association qui permettra de connaitre la nature du lien(: lien en français, en anglais, ...). Ça m'a l'air plus sympas !!!

    -
    Edité par LaurentG37 2 décembre 2020 à 13:11:50

    • Partager sur Facebook
    • Partager sur Twitter
      2 décembre 2020 à 13:14:54

      Bonjour,

      LaurentG37 a écrit:

      des mots ( textes de liens ) séparés par des virgules , puis en php explode() ...

      Ce n'est pas une bonne façon de fonctionner en terme de base de données relationnelles. Tu casses la première forme normale (atomicité).

      LaurentG37 a écrit:

      je peux mettre le chemin vers un fichier JSON que l'utilisateur pourra modifier comme il veut ?

      Même réponse pour cette solution.

      LaurentG37 a écrit:

      je pense aussi à une table qui contient les champs nom et lien !!! . Et une table d'association qui permettra de connaitre la nature du lien(: lien en français, en anglais, ...). Ça m'a l'air plus sympas !!!

      Oui ! En terme de base de données relationnelles, c'est la seule façon de procéder.

      Un lien est une entité à part entière, il a donc droit à sa propre table et à ses propres attributs (colonnes). Les relations avec les autres entités de ton projet seront portées soit par une clé étrangère, soit par une table de relation en fonction des cardinalités.

      Petit rappel de tout ça dans le doc "Conception BDD" via ma siganture ;)

      -
      Edité par Benzouye 2 décembre 2020 à 13:16:51

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        3 décembre 2020 à 15:37:09

        Merci,

        je suis content de commencer à "penser correctement "  quand je fais des MPD ...!

        Laurent.

        • Partager sur Facebook
        • Partager sur Twitter

        une liste de liens dans un champ de BDD

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown