Hallo
Ich bin gerade dabei mir eine Tabellenstruktur für eine Mysql-Datenbank zu überlegen.
Dabei habe ich irgendwie noch so ein paar Probleme, bzw. keine Probleme, sondern „keinen Plan“ was die besten Lösung ist.
Also:
Folgende Tabellen:
-„board“
Felder(id,head,beschreibung, rechte???)
Hier kommen die Oberthemen aus dem Forum hinein
-„themen“
Felder(id,board_id,head,beschreibung,....)
Hier kommen dann die vom Benutzer erstellten Themen rein, das Feld „board_id“ gibt die
Oberkategorie an.
-„antworten“
Felder(id,themen_id, user_id,datum.....)
Hier stehen dann die Beiträge drin, themen_id stellt wieder die Verbingung zum Thema
Her, user_id gibt den benutzer an:
-„user“
Felder(id,rechte_id,name,passwort)
-„rechte“
ERSTES PROBLEM
Also ich möchte, das bestimmt boards nur für bestimmte gruppen sichtbar sind.
Also jeder User hat eine Gruppe:
Dann müsste bei der Tabelle“user“ ein Feld herein mit der „id“ der gruppe
So jetzt könnte ich ja einfach für jede Gruppe die Boards öffnen.
1.Problem/Frage
Ist es sinnvoll neben der tabelle „gruppe“ noch eine tabelle „rechte anzulegen“, wo dann halt die jeweiligen rechte reinkommen und die gruppen_id
also so
-„rechte“
Felder: (gruppenid,recht)
Dann hätte ich für jedes Recht(z.b verschieben) einen neuen Datensatz, falls man das erweitern möchte, z.b durch kleine Adminfunktionen.
Irgendwie weiß ich nicht so ganz wie ich das machen soll, man könnte ja auch bei der tabelle gruppe, für jedes recht eine neue Spalte anlegen, zb. Spalte „verschieben“ und dann halt JA oder NEIN, (TRUE OR FALSE) , dann hätte man das auch.
Ich hoffe ihr versteht das.
Ich möchte nur nicht anfangen zu basteln, und dann nachher wieder neu anfangen, weil ich mir total den Mist ausgedacht habe .
2. Problem
Wie muss ich die boards für mehrere Gruppen sichtbar machen?
Da muss ja dann in die Tabelle „boards“ ein Feld mit gruppe_id.
Hier könnte ich dann einen String reinsetzen, mit allen Gruppen_ids, die dieses board betrachten dürfen.
Allerdings, glaube ich man sollte keine strings in tabellen schreiben oder ????
Ich muss diese ja danach mühsam bearbeiten und kann diese nicht gleich mit mysql abfragen.
Andere Idee:
Zwischen tabelle
Ich mache eine tabelle „borads-gruppe“ dort kommt dann die id des borads rein und die der gruppe, die es betreten darf.
Also als Beispiel : Board 1 darf von gruppe 1 und 2 besucht werden
Dann säh das in der tabelle so aus
Board gruppe
1 1
1 2
Ist das eine guten Lösung ?
Ich hoffe ihr versteht alles und wisst auch das ich im Prinzip nur hören will ob das guten Herangehensweisen sind oder nicht!
Danke schon mal
Der_webi
der_webi (444) 4x Beste Antwort 2x "Danke"
|