PHP / MySQL indexer x éléments à x photo

Résolu/Fermé
Aierz - 23 juil. 2009 à 01:00
 Aierz - 23 juil. 2009 à 17:46
Bonjour,

Je suis actuellement en train de structurer la gestion de photos classées dans différents albums pour un site web. Je les enregistre pour cela dans ma bdd, qui contient par photo les champs suivant : id, nom/chemin de la photo, id de l'album correspondant, légende, timestamp (date d'ajout), uploader. 6 champs au total.

Cependant, il est nécessaire que celui/ceux qui uploadent les photos puissent sélectionner les personnes présentes dessus. J'aimerais savoir s'il existe une solution utilisée le plus souvent, si oui laquelle ?

Vous ne comprenez peut-être pas mon problème, qui est le suivant : un nombre indéfini de personnes peut être présente sur une photo, tout comme une seule personne peut être présente sur un nombre indéfini de photo. Je ne vois pas trop comment faire, à part en enregistrant par exemple tous les id dans le même champs, en les séparant par des virgules (par exemple) mais cela ne me semble pas très propre, surtout si on atteint un grand nombre de photo / personnes...

Qu'on soit bien d'accord, je parle là du contenu de ma bdd, non pas des champs remplis par le client (bien que ça semble évident :/ ).

J'espère m'être bien faite comprendre, merci d'avance...
A voir également:

2 réponses

imw Messages postés 233 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 8 septembre 2011 42
23 juil. 2009 à 08:41
ce dont tu as besoin, c'est une table de croisement.

table Photo
table Personnes
table xPhotoPersonnes

dans ta table xPhotoPersonnes, tu as 2 champs : idPhoto et idPersonne

tu peu ainsi lier tes photos à tes utilisateurs. il y aura autant de lignes que de liaisons photo/personne.

tu n'as pas vraiment de limite de nombre.
Et tu peux retrouver toutes les photos ou il y a telle personne ou inversement ... avec une simple requête.
0
Merci beaucoup :)
0