david73410
Messages postés2Date d'inscriptionmardi 19 mai 2009StatutMembreDernière intervention24 mars 2010
-
23 mars 2010 à 14:29
david73410
Messages postés2Date d'inscriptionmardi 19 mai 2009StatutMembreDernière intervention24 mars 2010
-
24 mars 2010 à 14:10
Bonjour,
Je suis assez novice en PHP et je fais appel à vous car je suis bloqué sur un cas qui je pense doit être assez simple pour des "pros" comme j'ai lu ici...
Je gère sur mon site un espace membre qui est accèssible par login et mot de passe (MD5) stocké dans une table membre. Aujourd'hui celà fonctionne très bien et mes membres ont accès à tout l'espace.
Dans cet espace membre, il y a certaines pages que je voudrais interdire aux membres qui ne sont pas "premium". Pour ce faire je gère dans ma table également un champ qui s'appelle RANG dans lequel je renseigne soit 1 ou 2. Les membres de rang 1 sont les membres qui n'ont pas toutes les autorisations et les membres de rang 2 sont les membres dit "premium" qui ont accès à toutes les pages.
Je n'arrive pas définir ce rang de façon à ce que les membres de rang 1 n'aient pas l'accès.
Selon vous, y a t il un moyen plus simple ou sinon quelqu'un a t il la solution à ce problème ?
Merci d'avance de votre aide
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 23 mars 2010 à 22:49
Salut,
Je ne vois pas bien où se trouve le problème.
J'imagine que tu gères les accès de tes utilisateurs via des sessions (??)
Dès lors :
Connexion
=> attribution $_SESSION['rights'] = rang de l'utilisateur : 1 ou 2 en fonction de la DB
Sur les pages accessibles à tous les membres enregistrés (1 ou 2) :
if (!isset($_SESSION['rights'])) header("Location : page d'accueil");
Sur les pages accessibles uniquement aux membres de rang 2 :
if ($_SESSION['rights'] < 2) header("Location : page d'accueil");
... ou message "veuillez banquer en devenant membre premium pour accéder à cette page"
Le mieux étant bien sur de ne pas proposer de lien menant vers des pages de rang 2 aux utilisateurs de rang 1 (en plus de la protection of course)