Pourquoi $_SESSION n'est pas lue par ldap ?

Fermé
recup_session - Modifié par recup_session le 9/07/2015 à 16:43
 recup_session - 9 juil. 2015 à 16:44
Bonjour,
Je souhaite récupérer une variable de session $_SESSION['username'] et l'utiliser dans ma fonction ldap_bind.
Ma variable $_SESSION['username'] s'affiche, elle ne fonctionne pas dans la fonction ldap_bind, en fait, tout le code HTML qui vient après ldap_bind n'est pas exécuté.
Pourquoi ça ne fonctionne pas ?
<?php
session_start();
echo $_SESSION['username';]
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
ini_set('display_errors',1);
 
// config
$ldapserver = 'ldap://XXXX.XXX.XXX.XXX';
$ldapuser= $_SESSION["username"];
$ldappass     = '*********';
$ldaptree    = "DC=croix-rouge,DC=asso,dc=fr";
 
// connect
$ldapconn = ldap_connect($ldapserver) or die("Could not connect to LDAP server.");
echo $ldapconn;
ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
 
if($ldapconn) {
    // binding to ldap server
 
    $ldapbind = ldap_bind($ldapconn, $ldapuser, $ldappass) or die ("Error trying to bind: ".ldap_error($ldapconn)); //L'erreur est ici !!!!!!!!!!!!
 
    // verify binding
    if ($ldapbind) {
        echo "LDAP bind successful...<br /><br />";
 
 
        $result = ldap_search($ldapconn,$ldaptree, "(cn=mesbahiy)") or die ("Error in search query: ".ldap_error($ldapconn));
        $data = ldap_get_entries($ldapconn, $result);
 
 
        // iterate over array and print data for each entry
       // echo '<h1>Show me the users</h1>';
        for ($i=0; $i<$data["count"]; $i++) {
            //echo "dn is: ". $data[$i]["dn"] ."<br />";
   $users=$data[$i]["cn"][0];     //nom complet = common name
            echo "User: ". $users ."<br />";
 
   $nom=$data[$i]["sn"][0];              //nom = surname
            echo "Nom: ". $nom ."<br />";
 $prenom=$data[$i]["givenname"][0];  //prénom = givenname
            echo "Prénom: ". $prenom ."<br />";
 
 
            if(isset($data[$i]["mail"][0])) {    //mail
    $email=$data[$i]["mail"][0];
                echo "Email: ". $email ."<br /><br />";
            } else {
                echo "Email: None<br /><br />";
            }
 
 
        }
        // print number of entries found
        echo "Number of entries found: " . ldap_count_entries($ldapconn, $result);
    } else {
        echo "LDAP bind failed...";
    }
 
}
echo "hello je récupère l'email de Adam : ".$email;
// all done? clean up
ldap_close($ldapconn);
?>


Erreur affichée :
ldap_bind(): Unable to bind to server: Invalid credentials in <b>C:\Program Files (x86)\Zend\Apache2\htdocs\RLF V21\menu.php</b> on line <b>111</b><br />
Error trying to bind: Invalid credentials

1 réponse

recup_session
9 juil. 2015 à 16:44
Le problème est résolu :)
Je n'avais pas mis la bonne valeur pour pour la session.
0