Permission admin

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Permission admin

Re: Permission admin

par Tenchu » 16 août 2011, 21:06

Salut !

En effet !
Ton aide est précieuse ! J'avais presque le même souci mais voilà que tout vient de rentrer dans l'ordre ! ( je souhaitais faire la différence entre les utilisateurs connectés ou non ! )
Ton code est vraiment très utile !
Merci encore !

Re: Permission admin

par jeromus30 » 15 août 2011, 13:37

Merci beaucoup de ta réponse aussi complète =D>

Tu ma bien aider ^^

Re: Permission admin

par Alf?> » 15 août 2011, 13:20

Salut jeromus30,

Il va te falloir jouer avec les SESSIONs et le SQL.

Pour bloquer la page admin aux 'membres', tu dois faire passer un paramètre SESSION contenant :
le status de la personne connecté.

Pour se faire il faut vérifié que la personne et loggé sur le site, ensuite si elle a le status d'admin.

On commence par ajouter les variable de SESSION quand la personne de connecte

Avant tout on démarre la session :
session_start();
Puis, dans la page de connexion (avec les champs identifiant et mot de passe) on commence remplir une variable SESSION.
//$login fait référence à l'identifiant lors de la phase de traitement de vérification de connexion
$sql = mysql_query("SELECT * FROM user WHERE login_user = '$login';") or die(mysql_error());
$ligne = mysql_fetch_array($sql);

//On place l'ID de la personne conecté dans une variable SESSION qui s'appelle 'ID'
$_SESSION['id'] = $ligne['id_user'];
$_SESSION['status'] = $ligne['status'];
Ensuite on réutilise cette variable session :
//Si la personne est loggée et qu'elle existe alors...
if(isset($_SESSION['id']) && (!empty($_SESSION['id']))
{
  if($_SESSION['status'] == 0)
  {
    /*AFFICHAGE DU MENU ADMIN*/
  }
  else
  {
     /*AFFICHAGE DU MENU CLASSIQUE*/
  }
}
Pour finir sur la page qui contient toute l'administration tu dois vérifier si c'est bien un admin qui souhaite l'atteindre
//Si la personne est loggée et qu'elle existe alors...
if(isset($_SESSION['id']) && (!empty($_SESSION['id']))
{
  if($_SESSION['status'] != 0)
  {
   //On renvoi la personne à l'index principal   
   header('Location:./');
  }
}
else
{
  //On renvoi la personne à l'index principal   
  header('Location:./');
}
Attention, petit rappel : La fonction session_start() doit être appelé a chaque fois que tu utiliseras des variables de SESSION dans tes pages !

Si t'as des questions je te conseil de voir les tutos sur les SESSIONs. :lol:

Note : Il est possible de faire tous ces traitement avec des coockies --> http://www.phpfrance.com/tutoriaux/inde ... es-cookies :mrgreen: .

Permission admin

par jeromus30 » 15 août 2011, 07:41

Bonjour,

J'ai fais dans la table de mon site une colonne : status
Par défaut c'est 0 sa veux dire membre et 1 c'est admin
Je voudrais savoir comment faire pour bloquer la page a tout les utilisateur sof les admin
et qui ai le menu Administration qui s'affiche en plus des autres menu mais uniquement visible et accessible aux admins.
Si vous n'avez pas compris je peux expliquer autrement.

Merci de votre aide,
cordialement,
jeromus