Eléphant du PHP |
171 Messages
17 mai 2011, 13:47
Salut,
Oui, l'usage de sessions peut te permettre de résoudre ce problème.
Tu dois surement avoir une table contenant la liste des utilisateurs avec leurs informations, tu peux rajouter une colonne acces_level par exemple. qui définira le niveau d'accès. Tu peux représenter ce champ soit par un nombre ou un varchar mais je préfère le nombre pour ma part.
Puis lors de la connexion au site tu n'as qu'a sélectionné aussi le champ access_level dans la base de données et le stocker dans une variable de session comme $_SESSION['acces_level'] par exemple.
Puis dans ton application tu n'as plus qu'a comparé la variable de session et voir si c'est celle correspond à celle requise pour accéder à la zone ou effectuer une certaine manipulation.
Dans le cas de ton menu par exemple. Dans ta base de données tu vas avoir des utilisateurs avec les access_level suivants : Directeur, Comptable, Agents, Administrateur.
Et ton menu se présenterai comme tel :
<?php
if($_SESSION['access_level'] == 'Directeur'){
<a href="directeur">Bureau du directeur</a>
}
if($_SESSION['access_level'] == 'Agents'){
<a href="agents">Bureau des agents</a>
}
if($_SESSION['access_level'] == 'Comptable'){
<a href="comptable">Bureau du comptable</a>
}
if($_SESSION['access_level'] == 'Administrateur'){
<a href="Administrateurs">Bureau des Administrateurs</a>
}
?>
Le bon jugement s'apprend par l'expérience qui s'acquiert en partie par le mauvais jugement.