Der er flere måder.
Mine to umiddelbar ideer er:
1) Klon alle tabeller så hver app kører på et separat
sæt tabeller.
Ikke elegant men overskueligt at lave.
2) Tilføj et felt "klasse" til alle de relevante tabeller.
Lad URL eller brugernavn bestemme klassen og tilføj
en WHERE klasse = ... til relevante queries.
Mere elegant men kræver også lidt mere.
Jeg kan ikke lige se behovet for nye joins.
arne_v, hvordan klon?
Hvis nu der er 2 klasser med 10 elever, hvad så? Mener du:
klasser
id - navn - email - pass - klasse
1 - jens - @ - jr - 5a
2 - niles - @ - nlz - 5b
forum
id - titel - txt - forfatter - svar - klasse
1 - test - bla - jens - 3 - klasseid 1
2 - test - bla - niles - 0 - klasseid 2
Jeg formoder at du idag har noget i retning af:
bruger
------
id (PK)
navn
forum
-----
id (PK)
navn
post
----
postid (PK)
forumid
brugerid
tid
emne
indhold
og at problemet nu er at du skal have subsettet brugere og fora.
Løsning #1 går ud på at klone de 3 tabeller uden at tilføje
felter som f.eks. bruger2, forum2 og post2 og så klone applikationen
også og rette klonen til så den bruger 2 tabellerne.
Hurtigt at lave, men det holder ikke når der skal laves
mange klasser.
Løsning #2 går ud på at tilføje felter klasse til bruger
og forum tabellen:
bruger
------
id (PK)
navn
klasse
forum
-----
id (PK)
navn
klasse
post
----
postid (PK)
forumid
brugerid
tid
emne
indhold
Når så brugeren logger ind finder du brugerens klasse og så viser
du kun de fora der hører til den klasse.
Hvis der er nogle fora som der skal være adgang til for flere
klasser, så skal du have en tabel struktur som:
bruger
------
id (PK)
navn
klasse
forum
-----
id (PK)
navn
klasseforum
----------
klasse (PK)
forumid (PK)
post
----
postid (PK)
forumid
brugerid
tid
emne
indhold
Beklager ventetiden... Dit sidste forslag er lige noget jeg kunne bruge.