Privilèges en php
Fermé
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
-
Modifié par glodybiss le 8/12/2011 à 09:43
glodybiss Messages postés 440 Date d'inscription vendredi 6 juin 2008 Statut Membre Dernière intervention 29 juillet 2015 - 13 déc. 2011 à 14:59
glodybiss Messages postés 440 Date d'inscription vendredi 6 juin 2008 Statut Membre Dernière intervention 29 juillet 2015 - 13 déc. 2011 à 14:59
6 réponses
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
Modifié par Mihawk le 8/12/2011 à 10:48
Modifié par Mihawk le 8/12/2011 à 10:48
Hello,
Je n'aime pas trop l'idée de la page admin et la page client : cela nécessite de duppliquer le code... Je ferai plutôt un champ "admin" en base ou tu stockes par exemple 0 pour les admin ; 1 pour les utilisateurs.
Tu récupères ce champ et en fonction de sa valeur tu affiches ce que tu veux au sein de la même page.
Mihawk
"Tant qu'on ne fait pas, on ne sait pas."
Je n'aime pas trop l'idée de la page admin et la page client : cela nécessite de duppliquer le code... Je ferai plutôt un champ "admin" en base ou tu stockes par exemple 0 pour les admin ; 1 pour les utilisateurs.
Tu récupères ce champ et en fonction de sa valeur tu affiches ce que tu veux au sein de la même page.
Mihawk
"Tant qu'on ne fait pas, on ne sait pas."
Latinox
Messages postés
378
Date d'inscription
mardi 15 novembre 2011
Statut
Membre
Dernière intervention
17 janvier 2012
112
8 déc. 2011 à 09:50
8 déc. 2011 à 09:50
Jette un oeil à la fonction header();
en faisant qq chose dans ce style ça devrait marcher :
if (<condition pour etre admin) {
header("Location: http://tonsite/admin.php");
}
else {
header("Location: http://tonsite/client.php");
}
Attention à une chose : si on tape directement http://tonsite/admin.php, il ne faut pas qu'on puisse accéder aux fonctions d'administrateur ;) Autrement dit, ta page admin.php doit vérifier que le visiteur a bel et bien les droits d'admin...
Ca peut paraître évident, mais je préfère le rappeler :)
en faisant qq chose dans ce style ça devrait marcher :
if (<condition pour etre admin) {
header("Location: http://tonsite/admin.php");
}
else {
header("Location: http://tonsite/client.php");
}
Attention à une chose : si on tape directement http://tonsite/admin.php, il ne faut pas qu'on puisse accéder aux fonctions d'administrateur ;) Autrement dit, ta page admin.php doit vérifier que le visiteur a bel et bien les droits d'admin...
Ca peut paraître évident, mais je préfère le rappeler :)
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 09:55
8 déc. 2011 à 09:55
ah ! merci, dans ce cas les conditions pour être administrateur doit être définies dans la base des données ? le if vérifie les conditions défini dans la base des données.
bissdebrazza
Messages postés
2065
Date d'inscription
vendredi 29 juin 2007
Statut
Contributeur
Dernière intervention
7 décembre 2017
712
Modifié par bissdebrazza le 8/12/2011 à 11:18
Modifié par bissdebrazza le 8/12/2011 à 11:18
Salut!
Je rejoins l'idée de Mihawk. j'ai eu à faire un espace membre avec plusieurs niveau d'accès et pour cela j'ai utilisé l'affichage conditionnel. Dans ta table membre, tu ajoutes un champ "statut" qui sera "admin" ou "user" et lors de la connexion on doit récupérer la valeur de ce champ pour la personne qui se connecte et faire la comparaison et afficher ce qui est nécessaire (menu par exemple). ça t'éviterai de taper le code en double.
Je te file le code tout à l'heure le temps que j'allume mon PC personnel (là j'écris avec le PC de service).
cdt
«Il faut avoir déjà beaucoup appris de choses pour savoir demander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU
Je rejoins l'idée de Mihawk. j'ai eu à faire un espace membre avec plusieurs niveau d'accès et pour cela j'ai utilisé l'affichage conditionnel. Dans ta table membre, tu ajoutes un champ "statut" qui sera "admin" ou "user" et lors de la connexion on doit récupérer la valeur de ce champ pour la personne qui se connecte et faire la comparaison et afficher ce qui est nécessaire (menu par exemple). ça t'éviterai de taper le code en double.
Je te file le code tout à l'heure le temps que j'allume mon PC personnel (là j'écris avec le PC de service).
cdt
«Il faut avoir déjà beaucoup appris de choses pour savoir demander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 11:33
8 déc. 2011 à 11:33
Merci Mihawk et Biss vous m'avez beaucoup aider je serai reconnaissant à la fin de truc que je créer. Merci à toi aussi Latinox.
Biss j'attend le le code
Biss j'attend le le code
Latinox
Messages postés
378
Date d'inscription
mardi 15 novembre 2011
Statut
Membre
Dernière intervention
17 janvier 2012
112
8 déc. 2011 à 10:02
8 déc. 2011 à 10:02
Jete un oeil sur cet article :
http://dsampaolo.com/blog/1507-gerer-ses-droits-et-acces-utilisateurs-en-php-le-bit-bashing.html
http://dsampaolo.com/blog/1507-gerer-ses-droits-et-acces-utilisateurs-en-php-le-bit-bashing.html
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 10:07
8 déc. 2011 à 10:07
Ok, merci Latinox!!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bissdebrazza
Messages postés
2065
Date d'inscription
vendredi 29 juin 2007
Statut
Contributeur
Dernière intervention
7 décembre 2017
712
8 déc. 2011 à 11:44
8 déc. 2011 à 11:44
Comme promis!
Tu trouveras ici le dossier compressé avec tout ce dont tu as besoin.
Tiens nous au courant si tu as des soucis.
Cordialement
Tu trouveras ici le dossier compressé avec tout ce dont tu as besoin.
Tiens nous au courant si tu as des soucis.
Cordialement
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 11:48
8 déc. 2011 à 11:48
Merci ! Je vous tient informé de tout.
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 12:31
8 déc. 2011 à 12:31
Biss quand j'essaie d'abord de tester d'abord le script ça ne fonctionne pas, au fait quand je clique sur le bouton se connecter on me dit qu'il y a une table qui n'existe pas. Pourtant il ne vérifie aucun champ et directement il sort ce message
Table 'test1.administrateur' doesn't exist
bissdebrazza
Messages postés
2065
Date d'inscription
vendredi 29 juin 2007
Statut
Contributeur
Dernière intervention
7 décembre 2017
712
8 déc. 2011 à 12:41
8 déc. 2011 à 12:41
oui c'est normal.tu as un fichier connexion.php, il faut dans ce fichier modifier les paramètres de connexion et créer la table associée. ici la table administrateur
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 12:54
8 déc. 2011 à 12:54
donc à part la la utilisateur il y a une autre table c'est ça ?
bissdebrazza
Messages postés
2065
Date d'inscription
vendredi 29 juin 2007
Statut
Contributeur
Dernière intervention
7 décembre 2017
712
8 déc. 2011 à 13:55
8 déc. 2011 à 13:55
non c'est l'unique table.j'ai l'impression que tu as changer le nom de la table.
glodybiss
Messages postés
440
Date d'inscription
vendredi 6 juin 2008
Statut
Membre
Dernière intervention
29 juillet 2015
9
8 déc. 2011 à 14:11
8 déc. 2011 à 14:11
J'ai plutôt changé celui de la base des données
bissdebrazza
Messages postés
2065
Date d'inscription
vendredi 29 juin 2007
Statut
Contributeur
Dernière intervention
7 décembre 2017
712
8 déc. 2011 à 14:22
8 déc. 2011 à 14:22
bah voila!regarde,créé une nouvelle base de données avec la table utilisateurs et teste le script.une fois que c'est bon,tu pourras ensuite adapter à ton code source.teste le script à part