Ik ben een photogallery aan het maken in PHP + MySQL.
Ik wil de albums kunnen markeren als public en private.
De private albums zijn alleen beschikbaar voor ingelogde gebruikers. En afhankelijk van de permissions die op een private album staan kan de ingelogde gebruiker het album wel of niet zien.
Daartoe heb ik een tabel users, albums en permissions.
De tabel permissions ziet er als volgt uit:
Ik kijk dus gewoon of de ingelogde gebruiker matched met het album_id en dan geef ik het album weer. Zoals hierboven dus te zien is mag album 1 bekeken worden door user 1 en 3.
De vraag:
Hoe bouw ik de query die de volgende recordset teruggeeft.
Alle albums met private <> 1 uitgezonderd de albums die wel private=1 hebben, maar in de permission tabel staan met als user_id het user_id van de huidige ingelogde gebruiker.
Ik heb het al een keer proberen op te schrijven, maar zie door de bomen het bos niet meer.
Ik wil de albums kunnen markeren als public en private.
De private albums zijn alleen beschikbaar voor ingelogde gebruikers. En afhankelijk van de permissions die op een private album staan kan de ingelogde gebruiker het album wel of niet zien.
Daartoe heb ik een tabel users, albums en permissions.
De tabel permissions ziet er als volgt uit:
code:
1
2
3
4
5
6
7
8
9
10
| +---------+----------+---------+ | perm_id | album_id | user_id | +---------+----------+---------+ | 1 | 1 | 1 | | 2 | 1 | 3 | | 3 | 2 | 1 | | 4 | 3 | 5 | | 5 | 3 | 9 | | enz.. | enz.. | enz.. | +---------+----------+---------+ |
Ik kijk dus gewoon of de ingelogde gebruiker matched met het album_id en dan geef ik het album weer. Zoals hierboven dus te zien is mag album 1 bekeken worden door user 1 en 3.
De vraag:
Hoe bouw ik de query die de volgende recordset teruggeeft.
Alle albums met private <> 1 uitgezonderd de albums die wel private=1 hebben, maar in de permission tabel staan met als user_id het user_id van de huidige ingelogde gebruiker.
Ik heb het al een keer proberen op te schrijven, maar zie door de bomen het bos niet meer.