A voir également:
- Comment definir un intervalle de valeurs en php et comment réaliser un espace me
- Espace insécable - Guide
- Espace de stockage gmail plein - Guide
- Espace de stockage google - Guide
- Réaliser un organigramme - Guide
- Définir google comme page d'accueil - Guide
2 réponses
Bonjour,
Question 1 : Il te suffit d'utiliser un IF ou un SWITCH
par exemple :
Pour la deuxième question :
Plutôt que de faire cette vérification dans chacune de tes pages ... pourquoi ne fais tu pas UNE Seule page (main.php) .. qui INCLURA tes autres pages ?
Ainsi tu ne fais la vérification que dans le "container" principale.
De plus .. cette vérification ne pourrait être faite qu'à la connexion... je ne vois pas l'utilité de charger ton site en requêtes en refaisant cette vérification lors de l'affichage de chacune de tes pages .....
Tu peux en effet mettre un timer (en javascript) et supprimer les variables de session au bout d'un certain laps de temps .. et ainsi ... "ejecter" l'utilisateur du site.....
Tu pourrais aussi mettre ce timer que si il n'y a aucune "activité" sur la page au bout d'un laps de temps....
PS: Pour bien faire ... il est souhaitable de ne poser qu'une seule question par discussion... cela permet aux visiteurs du site de pouvoir plus facilement retrouver des informations dans le forum... dès fois qu'ils se poseraient les mêmes questions que toi....
PS2 : ta question concerne un trop vaste domaine pour que je puisse te donner des exemples de code.. de plus je ne suis pas là pour remplacer ton moteur de recherches....
Si tu souhaites obtenir des codes ou de l'aide de notre part il faudrait que tu cible un peu mieux tes besoins et qu'éventuellement tu nous indiques sur quoi tu bloques (exemple de code essayé à l'appui. )
Question 1 : Il te suffit d'utiliser un IF ou un SWITCH
par exemple :
switch($droit){ case 2 : //membre break; case 3 : //membre break; case 4: //modo break; default: //inconnu break; }
Pour la deuxième question :
Plutôt que de faire cette vérification dans chacune de tes pages ... pourquoi ne fais tu pas UNE Seule page (main.php) .. qui INCLURA tes autres pages ?
Ainsi tu ne fais la vérification que dans le "container" principale.
De plus .. cette vérification ne pourrait être faite qu'à la connexion... je ne vois pas l'utilité de charger ton site en requêtes en refaisant cette vérification lors de l'affichage de chacune de tes pages .....
et la page expirera au bout de 10min)
Tu peux en effet mettre un timer (en javascript) et supprimer les variables de session au bout d'un certain laps de temps .. et ainsi ... "ejecter" l'utilisateur du site.....
Tu pourrais aussi mettre ce timer que si il n'y a aucune "activité" sur la page au bout d'un laps de temps....
PS: Pour bien faire ... il est souhaitable de ne poser qu'une seule question par discussion... cela permet aux visiteurs du site de pouvoir plus facilement retrouver des informations dans le forum... dès fois qu'ils se poseraient les mêmes questions que toi....
PS2 : ta question concerne un trop vaste domaine pour que je puisse te donner des exemples de code.. de plus je ne suis pas là pour remplacer ton moteur de recherches....
Si tu souhaites obtenir des codes ou de l'aide de notre part il faudrait que tu cible un peu mieux tes besoins et qu'éventuellement tu nous indiques sur quoi tu bloques (exemple de code essayé à l'appui. )
cependant, jai toujours eu un problème côté switch. le code est a mettre dans une fonction, ou quoi? et ensuite je ferais un appel a cette fonction tout au debut de ma page?
Oui tu peux mettre ton switch dans une fonction et en effet..il te faudra l'appeler dans ta page.
Pour ma part, j'utilise le process suivant :(en gros...)
Dans ma BDD :
1 table utilisateurs ( id, login,pwd, nom,prenom, mail....)
1 table droits (pour définir les différents types de droits existants) : id,libelle ....
1 table droits_users (pour définir les droits attachés à un user ) (id_user,id_droit) => cette table a une relation 1-->n avec la table utilisateurs => 1 user peut être attaché à N droits.
1 table pages (pour définir les pages de mon site) : id, libelle, fichier (par exemple message.php),chemin (par exemple /undossier/truc/ )
1 table pages_droits (table de relation n-->n pour définir quels "droits" pour quelles "pages" ) : (id_page,id_droit)
Dans mon code php :
Je regarde quelles sont les droits du users
Je regarde si la page qu'il essaye d'appeler fait parti de ses droits et si elle existe...
Si oui.. j'affiche la page.
Si non.. je le redirige vers l'accueil.
Pour définir quelle page est à afficher.. j'utilise une variable GET (dans mon url) du genre :
www/monsite.fr/main.php?page=messages
et dans mon code... je la récupère via un !empty
$page = !empty($_GET['page'])?$_GET['page']:NULL; // je récupère les infos de la page : $chemin = // données de la BDD $fichier = // données de la BDD // Ici ensuite je fais tout mon code de vérification de droits... $droitsOK = .......// données de la BDD (requête qui, grâce à l'ID du user va voir dans la table droits_pages si il a l'autorisation d'afficher la page // ..... //et enfin.. je l'affiche si j'ai le droit et si la page existe : if($page && file_exists($chemin.$fichier ) && $droitsOK ){ include_once($chemin.$fichier ); }else{ include_once('Acces_refuse.php'); }
- Pour ce qui est de l'inclusion, je dois donc faire appel a des IF, de telle sorte que si l'utilisateur demande la page MESSAGES, je fasse une inclusion de la page messages.php, etc.....? j'ai l'impression que cette page principale aura un code tres lourd non?