Jointures SQL pour limiter accès

boss183 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   -  
Reivax962 Messages postés 3742 Statut Membre -
Bonjour à tous,
je suis actuellement en train de "développer" une application ayant pour but de permettre à un "administrateur de famille" de créer des nouveaux utilisateurs et ainsi leur attribuer leurs droits je m'explique : ces droits porteront sur la caméra IP ainsi qu'un disque dur IP, par exemple l'administrateur créer user 1 et dit il aura accès à la cam mais pas au dd, l'utilisateur 2 aura accès au dd mais pas à la cam, ... j'ai réalisé un MCD et ma base de données est donc constituées de 4 tables (administrateur, user, matériel, droit) donc si vous pouvez m'aider à réaliser ce système de droit, j'ai cru comprendre que les jointures SQL étaient la bonne solution mais je ne sais pas trop comment adapter les jointures SQL à mon problème.

Merci d'avance !
Configuration: Windows 2000
Firefox 2.0.0.12

6 réponses

  1. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Bonjour,

    Tu pourrais nous donner plus précisément le contenu des tables ?

    Merci,

    Xavier
    0
  2. boss183 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   17
     
    ADMIN : idADMIN (clé primaire), Nom, Prenom, Mail, mdp
    USER : idUSER (clé primaire), id ADMIN(clé étrangère), Nom, Prenom, Mail, mdp
    MATERIEL : idMAT (clé primaire), id ADMIN(clé étrangère),Lien
    DROIT (=relation USER et MATERIEL) : idUSER et idMAT (clés étrangères)
    0
  3. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    OK.

    Alors, supposons que l'id utilisateur soit stocké dans une variable $idU (notation php, mais c'est valable ailleurs, hein)
    Ce que tu veux obtenir, c'est la liste des droits de cet utilisateur.
    La requête est donc :
    $sql = "SELECT m.idMAT, m.Lien
    FROM MATERIEL m
    INNER JOIN DROIT d ON d.idMAT = m.idMAT AND d.idUSER = ".$idU

    Qu'est-ce que cela te donne ?

    Et si tu codes en autre chose que php, et n'arrive pas à traduire ça, fais-nous en part !

    Xavier
    0
  4. boss183 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   17
     
    je ne comprends pas : supposons que l'id utilisateur soit stocké dans une variable $idU
    0
    1. Reivax962 Messages postés 3742 Statut Membre 1 011
       
      En quel langage tu programmes ?
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. boss183 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   17
     
    bah en php mais j'ai créer mes tables avec phpmyAdmin
    0
  7. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    OK.
    L'id Utilisateur, tu le connais bien, non ? Il est bien placé dans une variable ? Je ne comprends pas ce que tu ne comprends pas !
    0