insérer requete LDAP dans Mysql

insérer requete LDAP dans Mysql - PHP - Programmation

Marsh Posté le 24-12-2004 à 10:54:44    

Bonjour,
 
 je souhaite insérer le resulstat d'un requete LDAP dans MYSQl.
 
Pouvez vous me dire comment je dois m'y prendre.
 
je suis pas loin du resultat avec ce code mais ca ne marche pas.
 
$filter = "(&(objectClass=user)(objectCategory=person)(cn=*))";
 
$res = ldap_search($conn,"OU=soc,dc=société,dc=com", $filter ,array("displayname","physicaldeliveryofficename","description" ));  
 
 
 
 
 
$info = ldap_get_entries($conn, $res);
 
 
 
    for ($i = 0; $i < count($info)-1; $i++) {
 
$displayname_s = STRING_chars_in_normal($info[0]["displayname"][0]);
  if ($displayname_s==NULL) {
  $displayname_s="Aucunposte";
      }
 
$uc_nom_s = STRING_chars_in_normal($info[0]["physicaldeliveryofficename"][0]);
  if ($uc_nom_s==NULL) {
  $uc_nom_s="Aucunutilisateur";
  }
$service_s = STRING_chars_in_normal($info[0]["description"][0]);
  if ($service_s==NULL) {
  $service_s="Aucunutilisateur";
  }
  }
 
$insert_a = array();
 
while ($insert_a) {
   
$query_s = "INSERT INTO T_user (UC_NOM,NAME_USER, SERV_USER,DATE_USER) VALUES ('" . addslashes($uc_nom_s) . "','" . addslashes($displayname_s) . "','" . addslashes($service_s) ."','" . date("Y-m-d" ) . "')";
 
$result_i = mysql_db_query($dbName_s, $query_s);
   
}

Reply

Marsh Posté le 24-12-2004 à 10:54:44   

Reply

Marsh Posté le 03-01-2005 à 12:42:52    

:bounce:

Reply

Marsh Posté le 03-01-2005 à 12:53:19    

Code :
  1. $insert_a = array();
  2. while ($insert_a) {


moi je trouve ce passage quelque peu louche... nan ??

Reply

Marsh Posté le 03-01-2005 à 12:54:48    

Code :
  1. for ($i = 0; $i < count($info)-1; $i++) {


de même que celui-là où forcément il te manquera le dernier objet de ton annuaire Ldap

Reply

Marsh Posté le 03-01-2005 à 12:55:55    

allez tiens je te le donne en mille, Emile, ça serait pas la parenthèse refermante de la boucle for qui est mal placée... ;)

Reply

Marsh Posté le 03-01-2005 à 13:21:16    

titione a écrit :

Code :
  1. $insert_a = array();
  2. while ($insert_a) {


moi je trouve ce passage quelque peu louche... nan ??


 
 
Oui moi aussi.
 
mais je ne sais pas comment mettre en place une boucle pour inserer chaque données ldap dans mysql.

Reply

Marsh Posté le 03-01-2005 à 13:30:42    

ok ca fonctionne avec la parenthese à la bonne place.
 
voici le code
for ($i = 0; $i < count($info)-1; $i++) {
 
  $displayname_s = STRING_chars_in_normal($info[$i]["displayname"][0]);
   if ($displayname_s==NULL) {
   $displayname_s  ="Aucunposte";
      }
 
  $uc_nom_s  = STRING_chars_in_normal($info[0]["description"][0]);
  if ($uc_nom_s==NULL) {
  $uc_nom_s  ="Aucun_utilisateur";
  }
  $service_s = STRING_chars_in_normal($info[0]["physicaldeliveryofficename"][0]);
  if ($service_s==NULL) {
  $service_s ="Aucun_service";
  }
 
 
 
 
 
 
 
 
  $query_s = "INSERT INTO T_user (UC_NOM,NAME_USER, SERV_USER,DATE_USER) VALUES ('" . addslashes($uc_nom_s) . "','" . addslashes($displayname_s) . "','" . addslashes($service_s) ."','" . date("Y-m-d" ) . "')";
  //print $query_s . "<br>";
  $result_i = mysql_db_query($dbName_s, $query_s);
  if($result_i==0) {
   getError("LDAP-003A", mysql_errno() . " - " . mysql_error() . "<BR>" . $query_s, "DATABASE" );
   exit;
  }
 }

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed