login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Documentbeveiliging/membersysteem

Offline Soebam - 01/02/2007 14:39
Avatar van SoebamHTML ver gevorderde Beste sima's,

Eerst even wat ik heb en wat ik wil:

Ik ben bezig aan een website waarop straks een groot aantal artikelen komen te staan. Ik wil graag een ledensysteem maken, waarop de admin per member aan kan geven welke artikelen hij/zij mag bekijken, en welke niet.

Logisch lijkt het me om elk document een ID te geven, en elke user een array met ID's die hij/zij mag zien. In elk artikel include ik dan een bestandje controle.php, die kijkt of het artikel ID in de array van de user voorkomt. Zo ja, laat het artikel zien; zo nee, een error.

Ik ben hieraan zelf begonnen maar ik moet het maar onder ogen zien, ik ben (nog) te leek met php om dit voor elkaar te krijgen. Nu vraag ik me dus af, is er een kant en klaar script voor? Kent iemand zo'n script, of heeft iemand ooit zoiets gemaakt wat ik mag gebruiken ?

(ik weet dat sommigen dit onder samenwerken vinden vallen, maar ik plaats het toch op het forum omdat ik niet vraag een script voor me te maken, liefst enkel een verwijzing of een paar tips in de juiste richting)

8 antwoorden

Gesponsorde links
Offline xSc - 01/02/2007 14:44
Avatar van xSc Onbekend Houd het gewoon in een db bij i.p.v. in arrays.

Document_id User_id Toegang


Ik noem maar wat. Bij toegang 0 dan niet, bij 1 wel toegang. Je weet nu ook het document en de user ... dus lijkt me geen probleem.
Offline Soebam - 01/02/2007 14:45
Avatar van Soebam HTML ver gevorderde Wowow het is geen php probleem óf een SQL probleem, het is een Soebam probleem. Ik kan dit niet en om het te leren heb ik nu geen tijd. Ik ben dus eigenlijk op zoek naar iets 'voorgebakken' wat ik aan kan passen 
Offline slabbetje - 01/02/2007 15:15
Avatar van slabbetje Nieuw lid is het niet een stuk simpeler om een soort van rechten te maken?

2 = toegang tot alles
1 = toegang tot een bepaald ding
0 = Geen
Offline Abbas - 01/02/2007 16:28
Avatar van Abbas Gouden medaille

Crew .NET
@slabbetje: hier blijf je een beetje met hetzelfde probleem zitten...

Als je alle rechen hebt of helemaal geen is het geen probleem, dat is gemakkelijk te controleren...
Maar als je toegang hebt tot een bepaald ding, moet er bepaald worden tot welke dingen je toegang hebt en daar zit zijn probleem: Hoe kan hij dit oplossen...  
Offline Soebam - 01/02/2007 17:52
Avatar van Soebam HTML ver gevorderde Zoals ik het zeg in mijn beginpost lijkt me een uitstekende oplossing, per user een array (of tabel in db) met de id's die hij/zij mag bekijken. De opzet is niet moeilijk, ik heb alleen niet de php skills om dit om te zetten in een werkend script. Ik geloof niet dat iemand mijn vraag tot nu toe echt gelezen heeft..
Offline Abbas - 01/02/2007 18:05 (laatste wijziging 01/02/2007 18:39)
Avatar van Abbas Gouden medaille

Crew .NET
Tabel: "artikelen"
id user_id art1 art2 art3
-----------------------------
1 | 1 | 0 | 1 | 0
2 | 3 | 1 | 1 | 1
3 | 4 | 1 | 0 | 1

en als er dan iemand op deze url komt:
www.jouwsite.be/artikels.php?id=2

doe je:
  1. <?php
  2.  
  3. $id = $_COOKIE["id"];
  4. $query = mysql_query("SELECT * FROM artikelen WHERE user_id = '".$id."' ");
  5. $result = mysql_fetch_assoc($query);
  6.  
  7. if($result == 1)
  8. {
  9. // lezen
  10. }
  11. else
  12. {
  13. // niet lezen
  14. }

en dan controleer je $result of het 1 of 0 is,
Als het een is mag hij het zien, bij 0 niet...  

Ik hoop dat dit ongeveer juist is, ben namelijk niet zo'n php-expert 
Offline ikkedikke - 01/02/2007 23:04
Avatar van ikkedikke PHP expert zo werkt het niet, dan moet je namelijk iedere keer dat je een artikel toevoegt een rij bijmaken.
de beste oplossing is om een linktabel te maken met iedere permissie:
  1. Gebruikers:
  2. id
  3. naam
  4. ...
  5.  
  6. Artikelen:
  7. id
  8. titel
  9. ...
  10.  
  11. Links:
  12. id
  13. userid
  14. artikelid

en voor ieder artikel dat een gebruiker mag lezen een record toevoegen.
Zo heb je geen beperking op het aantal gebruikers of artikelen.
Offline Abbas - 01/02/2007 23:13
Avatar van Abbas Gouden medaille

Crew .NET
Ja je hebt gelijk, dat is inderdaad een betere oplossing  
Maar zoals ik al zei (check m'n status), ik ben geen PHP-expert...

Hopelijk vindt Soebam het ook een goede oplossing!!!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.204s