A voir également:
- Boucle while dans ldap
- Mon pc s'allume et s'éteint en boucle - Forum Matériel & Système
- Client ldap windows - Télécharger - Édition & Programmation
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Tv orange chargement en boucle ✓ - Forum TV & Vidéo
- Boucle cmd - Forum Programmation
4 réponses
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
5 févr. 2010 à 15:31
5 févr. 2010 à 15:31
Bonjour
Ben oui, le problème est ton :
Si tu ne le modifies pas, il garde la même valeur donc la boucle est infinie.
La solution est donc :
Ben oui, le problème est ton :
while($info) { }
Si tu ne le modifies pas, il garde la même valeur donc la boucle est infinie.
La solution est donc :
$info = ldap_get_entries($ds, $sr); while($info) { // Tout ton code // Puis à la fin $info = ldap_get_entries($ds, $sr); }
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
5 févr. 2010 à 15:38
5 févr. 2010 à 15:38
Ah, correction: peux-tu essayer ça :
while(($info = ldap_get_entries($ds, $sr)) { }
Bonjour
Il ne faut pas répéter le ldap_get_entries($ds, $sr) dans le while ni dans la boucle, ça n'a rien à voir avec le parcours d'une liste.
Ton programme initial était presque bon, mais la condition while ($info) était mauvaise. En fait, il faut boucler sur toutes les lignes du tableau $info, il fallait donc faire:
while ($i<count($info)-1) // -1 parce que tu incrémentes $i au début de ta boucle
Il ne faut pas répéter le ldap_get_entries($ds, $sr) dans le while ni dans la boucle, ça n'a rien à voir avec le parcours d'une liste.
Ton programme initial était presque bon, mais la condition while ($info) était mauvaise. En fait, il faut boucler sur toutes les lignes du tableau $info, il fallait donc faire:
while ($i<count($info)-1) // -1 parce que tu incrémentes $i au début de ta boucle
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
5 févr. 2010 à 15:53
5 févr. 2010 à 15:53
ton $info = ldap_get_entries($ds, $sr), il renvoie un tableau non?
Pas besoin de while alors. :)
Pas besoin de while alors. :)
$info = ldap_get_entries($ds, $sr); $size = length($info) for($i=0;$i<$size;$i++) { if ($i%2 == 0) echo '<tr bgcolor = "#FFFFFF">'; else echo '<tr bgcolor = "#eaf1f9">'; echo "<td>". $info[$i]["cn"][0] . "</td>"; echo "<td>". $info[$i]["title"][0] . "</td>"; echo "<td>". $info[$i]["telephonenumber"][0] . "</td>"; for($j=0;$j<$info[$i]["mail"]["count"];$j++) { echo "<td>". $info[$i]["mail"][$j] ."</td>"; } echo "<td>". $info[$i]["postofficebox"][0] . "</td>"; echo "</tr>"; } ldap_close($ds); echo "</table>"; }
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
5 févr. 2010 à 15:54
5 févr. 2010 à 15:54
Bon ben on avait trouvé la réponse au même moment (sauf que je me suis cassé la tête à tout corriger :D)
gmartine
>
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
5 févr. 2010 à 15:56
5 févr. 2010 à 15:56
merci bilboo de tes réponses
comment faire pour classé par ordre alphabétique? avec ldap
comment faire pour classé par ordre alphabétique? avec ldap
5 févr. 2010 à 15:37
j'ai essayé ce que tu viens de me donner et sa me fait toujours la même chose
$info = ldap_get_entries($ds, $sr);
while($info) {
// Tout ton code
// Puis à la fin
$info = ldap_get_entries($ds, $sr); // cette partie se met bien dans la boucle while? car je l'ai mis dans la boucle while et il se passe rien
}
que mettre dans while(?) ?
merci