droits des membres sur un forum

Groupes et droits sur un forum

a marqué ce sujet comme résolu.

Bonjour tout le monde :)

Je suis entrain de programmer un forum pour mon siteweb , je me trouve confronté a un probleme, j'ai envie des creer des groupes qui ont chacun un droits specifiques sur un forum;

Une petite demonstration Une table groupes

  • groupe_id
  • groupe_logo
  • groupe_nom

et une table droits

  • droit_id
  • forum_id
  • id_groupe
  • droit_sur_forum

Imaginons maintenant les administrateurs qui ont tous les droits donc , il faudrait mentionné dans la table droit tous les forums , je trouve ça un peu trop repetitif ? Pouvez vous m'aider ? Merci :)

+0 -0

Salut :)
C'est une table de liaison, il est normal qu'il y ait un certain nombre d'entrées. Ce n'est pas gênant.

Par contre, sur les tables de liaison, pas besoin (voir même pas bien) de mettre un id (droit_id ici). La clé est définit par la relation elle-même (forum_id + id_groupe)

Salut :)
C'est une table de liaison, il est normal qu'il y ait un certain nombre d'entrées. Ce n'est pas gênant.

Par contre, sur les tables de liaison, pas besoin (voir même pas bien) de mettre un id (droit_id ici). La clé est définit par la relation elle-même (forum_id + id_groupe)

SeeoX

Merci :) donc si j'ai 40 forum :lol: 40 entrée pour le groupe admin :euh: trop long :) merci

+0 -0

40 lignes ne pose aucun problème pour le système de base de données qui peut en gérer des millions sans scier.

Là où le fait d'avoir un droit par forum peut devenir embêtant, c'est quand tu crées un nouveau forum: il ne faut pas oublier d'ajouter le droit correspondant en même temps… Mais ajouter un nouveau forum n'est normalement pas qelque chose qu'on fait tous les jours.

Cela dit, beaucoup de systèmes de droit ont un raccourci pour spécifier tous les forums, la valeur -1 par exemple. Attention car ça introduit un cas particulier à prendre en compte lors des jointures, et ça peut fortement diminuer les performances, infiniment plus que d'avoir 40 lignes.

LE cas particulier de l'admin qui a accès à tout est aussi très souvent codé ailleurs que dans le système de droits du forum. Typiquement, un flag directement dans la table des utilisateurs.

+1 -0

phpBB (pour ne citer que lui) possède une liste de droit avec 40 lignes modérateurs pour 40 forums s'il le faut. L'admin a, je crois, aussi ses entrés dans phpBB, seul le super admin a un flag passe partout.

Merci :) donc si j'ai 40 forum :lol: 40 entrée pour le groupe admin :euh: trop long :) merci

Et c'est la une erreur, comme la signalé QuentinC, MySQL peut gérer des millions de ligne sans broncher d'un poil (sinon il ne serait pas le moteur de base de donnée le plus utiliser). Le fait, cependant, d'avoir une interface d'administration mal conçu peut mener à devoir faire une tâche rébarbative (je suis le 1er à aller modifier mes articles de blog directement via phpMyAdmin… Enfin avant de passer sous Docker et d'avoir fait le choix de ne plus l'avoir ^^ ).
Le problème viendrait donc de ton interface et des scripts derrière qui devront être bien conçu (imaginé, dessiné s'il le faut) avant de le coder pour que cette tâche devienne invisible pour toi ;)

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte