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
| // on a créé 2 tableaux (1 avec les noms + prénoms, 1 avec les login) passés en parametre
// recup_users_from_ldap interroge le ldap et rempli les 2 tableaux (passés par reference)
function recup_users_from_ldap(&$tab_ldap, &$tab_login, $DEBUG=FALSE)
{
// cnx à l'annuaire ldap :
$ds = ldap_connect($_SESSION['config']['ldap_server']);
if($_SESSION['config']['ldap_protocol_version'] != 0)
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, $_SESSION['config']['ldap_protocol_version']) ;
if ($_SESSION['config']['ldap_user'] == "")
$bound = ldap_bind($ds); // connexion anonyme au serveur
else
echo $ds; ?> <br/> <?php
echo $_SESSION['config']['ldap_user'];?> <br/> <?php
echo $_SESSION['config']['ldap_pass'];?> <br/> <?php
$bound = ldap_bind($ds, $_SESSION['config']['ldap_user'], $_SESSION['config']['ldap_pass']);
// recherche des entrées :
if ($_SESSION['config']['ldap_filtre_complet'] != "")
$filter = $_SESSION['config']['ldap_filtre_complet'];
else
//$filter = "(&(".$_SESSION['config']['ldap_nomaff']."=*)(".$_SESSION['config']['ldap_filtre']."=".$_SESSION['config']['ldap_filrech']."))";
$filter = "(&(".$_SESSION['config']['ldap_nomaff']."=*)(".$_SESSION['config']['ldap_filtre']."=".$_SESSION['config']['ldap_filrech']."))";
$sr = ldap_search($ds, $_SESSION['config']['searchdn'], $filter);
$data = ldap_get_entries($ds,$sr);
$sdn = $_SESSION['config']['searchdn'];
echo $sdn;?> domaine<br/> <?php
echo $sr;?> search<br/> <?php
echo $ds;?> serv<br/> <?php
echo $filter;?> filtre<br/> <?php
echo $info;?> info2<br/> <?php
foreach ($data as $info)
{
echo $info[0];?> info<br/> <?php
$ldap_libelle_login=$_SESSION['config']['ldap_login'];
$ldap_libelle_nom=$_SESSION['config']['ldap_nom'];
$ldap_libelle_prenom=$_SESSION['config']['ldap_prenom'];
$login = $info[$ldap_libelle_login][0];
$nom = strtoupper(utf8_decode($info[$ldap_libelle_nom][0]))." ".utf8_decode($info[$ldap_libelle_prenom][0]);
// concaténation NOM Prénom
// utf8_decode permet de supprimer les caractères accentués mal interprêtés...
array_push($tab_ldap, $nom);
array_push($tab_login, $login);
}
} |
Partager