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

Langage PHP Discussion :

[Sécurité] Annuaire LDAP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 6
    Par défaut [Sécurité] Annuaire LDAP
    Bonjour,
    Je dois concevoir un annuaire base sur Active Directory (Windows 2003)

    Je souhaite afficher la liste des utilisateurs sur une page et quand on clique sur un nom d'utilisateur j'ai des informations qui s'affiche sur cet utilisateur.

    Pour l'instant j'arrive à afficher la liste des utilisateurs par ordre alphabétique et quand je clique sur l'utilisateur une nouvelle fenêtre s'ouvre avec les informations sur cet utilisateur

    Je n'arrive pas à faire fonctionner mon code avec des pseudo frame ou des Iframe

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    <?
    function cmp($a,$b) {
       global $fld1,$fld2,$fld3; // getting the fld defs from the main routine
       global $info; // get search results from the main routine
       $d=strcasecmp($info[$a][$fld1][0],
                           $info[$b][$fld1][0]);
       if ($d==0) {
         $d = strcasecmp($info[$a][$fld2][0],
                                 $info[$b][$fld2][0]);
         if ($d==0) {
           $d= strcasecmp($info[$a][$fld3][0],
                                 $info[$b][$fld3][0]);
         }
       }
       if ($d==0) {
         return 0;
       } else {
         return ($d>0)? 1 : -1;
       }
    }
     
     
     
    //Données de connexion
    $serveur_ldap = "nom de serveur";
    $membre = "utilisateur";
    $pass = "mot de passe";
    $ldap_host = "serveur Ad";
    $base_dn = " base";
    $filter="(&(objectClass=user)(memberOf= groupe))";
     
    $connexion = @ldap_connect($serveur_ldap);
    ldap_set_option($connexion, LDAP_OPT_PROTOCOL_VERSION, 3);
    ldap_set_option($connexion, LDAP_OPT_REFERRALS, 0);
     
    $session = ldap_bind($connexion, $membre, $pass);
     
     
     
    $sr=ldap_search($connexion, $base_dn, $filter);
    $info = ldap_get_entries($connexion, $sr);
     
    //modification pour le classement
       $fld1="sn";
       $fld2="givenname";
       $fld3="description";
     uksort($info,"cmp");
         while (list($i, $value) = each($info)) {
         $mynom = $info[$i]["cn"][0];
         $nom = $info[$i]["displayname"][0];
         $mynom=urlencode($mynom);
         echo" <br><a href=\"information.php?cn=$mynom\">$nom</a>";
     }
       ldap_free_result($sr);
    // on ferme la connexion au serveur LDAP
        ldap_close($connexion);
    ?>
    Merci d'avance pour les réponses

    Yann

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <iframe src="" name="user_details"></iframe><br />
    <a href="information.php?cn=<?php echo $mynom; ?>" target="user_details"><?php echo $mynom; ?></a>

    [Edit] Si tu veux le faire avec des pseudo-frames (c'est-à-dire des appels à include() dans ton PHP), je te le recommande plutôt que les iframes. C'est simple à mettre en oeuvre : inclus un script (information.php, on dirait) qui n'affiche que les détails de l'utilisateur en fonction d'une variable (générée par ta boucle : $mynom ou par l'URL : $_GET['cn']).

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 6
    Par défaut
    Citation Envoyé par Kirkis
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <iframe src="" name="user_details"></iframe><br />
    <a href="information.php?cn=<?php echo $mynom; ?>" target="user_details"><?php echo $mynom; ?></a>

    [Edit] Si tu veux le faire avec des pseudo-frames (c'est-à-dire des appels à include() dans ton PHP), je te le recommande plutôt que les iframes. C'est simple à mettre en oeuvre : inclus un script (information.php, on dirait) qui n'affiche que les détails de l'utilisateur en fonction d'une variable (générée par ta boucle : $mynom ou par l'URL : $_GET['cn']).
    Merci pour la réponse mais je rajoute ce code où ?
    (je débute en php )
    Yann

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Hmmm...

    Ajoute l'iframe où tu souhaites qu'elle s'affiche, je ne le sais malheureusement pas pour toi.
    Concernant le lien, c'est celui que tu construis dans ta boucle !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    while (list($i, $value) = each($info)) {
       $mynom = $info[$i]["cn"][0];
       $nom = $info[$i]["displayname"][0];
       $mynom=urlencode($mynom);
       echo" <br><a href=\"information.php?cn=$mynom\" target=\"user_details\">$nom</a>";
    }
    En passant, ton while me paraît bizarre...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JDBC]connexion entre db2 et l'annuaire ldap
    Par Man Crado dans le forum JDBC
    Réponses: 4
    Dernier message: 10/10/2005, 12h34
  2. [JNDI]connexion entre jndi et l'annuaire ldap
    Par Man Crado dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 10/10/2005, 12h33
  3. Comment accéder à un annuaire LDAP à partir de Delphi ?
    Par plante20100 dans le forum API, COM et SDKs
    Réponses: 25
    Dernier message: 28/07/2005, 14h45
  4. Interface graphique pour administrer un annuaire LDAP???
    Par SnipCool dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 09/06/2005, 18h40
  5. Réponses: 2
    Dernier message: 05/10/2004, 23h43

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