Hey,

Voor een website wil ik de ingelogde gebruikers de mogelijkheid geven om te kunnen bepalen welke gegevens openbaar zijn en welke privé, kortweg de privacy instellingen.

Dit betekent dat bijvoorbeeld voor voornaam, achternaam, adres, woonplaats, etc. allen afzonderlijk bepaald moet kunnen worden voor wie deze zichtbaar zijn.

Nu ben ik wel redelijk ervaren met het opzetten van databasestructuren, maar wellicht hebben jullie ideeën hoe je deze privacy instellingen eenvoudig en schaalbaar op kan slaan in de database.

De eerste gedachte van mij is gewoonweg voor elk betreffende veld in de database een extra veld aanmaken met de privacy-niveau, echter vind ik dit te omslachtig gezien het feit dat je bij het toevoegen van velden ook weer handmatig een veld moet toevoegen voor het privacy-niveau.

Jullie ideeën zijn dus van harte welkom!
Hoe zie jij een koppeltabel voor je (ik weet wat het inhoud, maar zie niet hoe je dat kan gebruiken voor privacy instellingen)?

Want je koppelt dan geen rijen, maar velden...
Een integer(of byte) die alle privacy-instellingen bevat.

voorbeeld:

1-naam
2-woonplaats
4-telefoonnummer.

3=naam+woonplaats verbergen
7=alles verbergen
Het zal inderdaad kunnen volgens het bitwise principe (ala een rechtensysteem). Daar ga ik eens naar kijken, bedankt tot zover!

Meer goede ideeën zijn welkom!
het aantal gegevens kan wel eens variabel zijn. Dus dan zou je eerst de soort velden kunnen definiëren in een tabel

Gegevens_velden
ID - Naam
------------
1 - Naam
2 - Voornaam
3 - Tussenvoegsel
4 - Widnows Live Messenger
5 - ICQ
6 - Mail
7 - Woonplaats
8 - Geboortedatum
9 - Geslacht
10 - etc....
etc...

user_gegevens
GegevenID - UserID - Value - Privacy (for_all, for_friends, none_of_all)
-----------------------------
1 - 1337 - Eliten - for_all
2 - 1337 - Jan - for_all
3 - 1337 - van - for_all
6 - 1337 - [email protected] - for_friends

Reageren