IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

[SGBD] Gérer des droits avec php/mysql


Sujet :

Administration MySQL

  1. #1
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut [SGBD] Gérer des droits avec php/mysql
    Bonjour, je développe un petit intranet avec le couple php/mysql.
    Seulement, j'aimerais pouvoir gérer différents droits d'accès ...

    Par exemple, les personnes du service commercial aurait accès à seulement certaines informations sur les clients (présents dans la BD) alors que les personnes du service technique auraient accès à d'autres infos, voire toutes ...

    Comment je peux m'y prendre ?

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Bonjour,

    il faut que tu rajoutes un champ dans ta table d'utilisateur avec un droit alloué. Ensuite, c'est selon le droit de la personne connecté que tu afficheras tel ou tel infos, fera tel ou tel requete,...

  3. #3
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut
    Et je peux faire ça comment simplement ?
    Et en faisant qqch de sécurisé ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    slt tu défini les valeur de tes statuts!!
    exemple:
    tu mets ds ta table le champ rang avec un varchar et défault 0

    $admin=1
    $user simple=0
    $webmaster=2
    etc...

    et kan tu veu déterminé un droit
    tu fé un

    if (isset($_SESSION[rang]==2)) pour seulement webmaster
    sinon juste apré un
    if($_SESSION[rang]==0) {
    header("Location: ../index.php");
    voilà si çà peu t'aider!!!

  5. #5
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut
    zizou59 :
    Ok. Mais il sert à quoi le "isset" ???
    Et pourquoi il y est sur le premier if mais pas sur le deuxième ?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    slt
    j'ai mi le if en condition!!!
    c'est pour te donner un exemple

    tu donne les droit par $_get[ta variable] ou $_post[ta variable]

    si c'est par exemple ta page admin
    tu mais (en tous début de page) le

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?
    if ($_SESSION[rang]==0) {
     header("Location: ../index.php");  //si pas adminou modo ou webmaster redirection index
     
    //gestion news
    if (isset($GET ou POST_[gestion_news]) && isset ($_Session[rang]==1))
     
    $titre_page='gestion news';
    require "protect/db.inc.php";
     
    $sql=(SELECT *FROM 'news' Where id);
    mysql_array...............
    if bla bla bla
    else blabla
    ?>
    c'est un exemple de gestion de droit d'accès

    tu comprend mieux???

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    238
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2006
    Messages : 238
    Points : 103
    Points
    103
    Par défaut
    Bonjour tout le monde.

    pontus21, je pense ke tu as une page de connexion.
    Dans cette page il faut vérifier dans quel direction aprtient la personne connecter puis il faut dans chaque page verifer les droit d'accée de l'utilisateur, pour cela tu peut utiliser le script de "zizou59".

    A+

    A suivre...

  8. #8
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut
    Et je peux aussi gérer mes droits sur la base de données ?

  9. #9
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    C'est même préférable dans la mesure où ils sont "extensibles" ou bien s'ils sont nombreux (on va pas créer une constante pour chaque droit surtout s'il y en a 300).


    Julp.

  10. #10
    Membre régulier
    Profil pro
    Dév FrontEnd
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Dév FrontEnd

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 114
    Points
    114
    Par défaut
    En fait, il y aurait 3 niveaux de droits différents.
    Mais une dizaine de personnes qui aurait accès à cette base.

    Et les 3 niveaux sont les suivants :
    - lecture seule
    - modification de certains champs seulement
    - modification de la totalité des champs


    Je peux m'y prendre comment ?

    Et je peux gérer ces droit avec mysql mais aussi en php ? (pour faire une double protection)
    Ou alors ça suffit en le gérant avec seulement mysql ?


    C'est faisable avec postgre ?

Discussions similaires

  1. Création des droits avec PHP
    Par hexoseth dans le forum Requêtes
    Réponses: 6
    Dernier message: 18/03/2008, 14h51
  2. Envoyer des email avec PHP
    Par dolf13 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 12/07/2006, 10h49
  3. [Outil] est il possible de creer des aplications avec php
    Par reski dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 04/03/2006, 18h25
  4. [Session] Gestion des droits en PHP
    Par persi dans le forum Langage
    Réponses: 3
    Dernier message: 22/02/2006, 14h54
  5. Quel SGBD avec PHP : MySQL ou Postgres
    Par charliejo dans le forum Requêtes
    Réponses: 6
    Dernier message: 25/01/2006, 12h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo