Arborescence recursive

leogalland Messages postés 2 Date d'inscription dimanche 31 octobre 2004 Statut Membre Dernière intervention 8 juin 2007 - 7 juin 2007 à 16:36
leogalland Messages postés 2 Date d'inscription dimanche 31 octobre 2004 Statut Membre Dernière intervention 8 juin 2007 - 8 juin 2007 à 10:27
Bonjour à tous,

J'ai intégré ce script dans une de mes pages.
Il fonctionne correctement et m'affiche l'arborescence des dossiers situés sur mon serveur Web.
Pour chaque dossiers trouvés je propose un lien pour voir le contenu.
Mon pb est le suivant : comment faire pour ne proposer le lien que sur le dernier dossier de chaque branche ???

Merci pour votre aide.

function ScanDir($Directory) {
 if (is_dir($Directory) && is_readable($Directory)) {
  if($MyDirectory = opendir($Directory)) {
   while($Entry = readdir($MyDirectory)) {
    if (is_dir($Directory."/".$Entry)) {
     if (($Entry != ".") && ($Entry != "..")) {
      $rep = $Directory."/".$Entry;
      echo '<li>[admin_documents.php?rep='.$rep.' '.$Entry.']</li>';
      echo "";
      ScanDir($Directory."/".$Entry);
      echo "";
     }
    } 
   }
   closedir($MyDirectory);
  }


 


 }


 


}

2 réponses

younes371 Messages postés 502 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 20 mars 2012
7 juin 2007 à 19:56
Bonjour,
utilise un compteur,
par exmple fait une boucle pour avoir le nombre de dossier (par exmple t as trouvé 8 dossiers).
après ds le while de la fonction que tu utilise :
if($nombredossier==8)
echo '<li>[admin_documents.php?rep='.$rep.' '.$Entry.']</li>';
else
echo '<li>.$Entry.'</li>';

N'importe où. 
mais là où il le faut.
0
leogalland Messages postés 2 Date d'inscription dimanche 31 octobre 2004 Statut Membre Dernière intervention 8 juin 2007
8 juin 2007 à 10:27
Merci pour cette répoinse rapide !

Effectivement c'est ce que je pensais faire.
Mais : 
   1 - je ne sais pas comment compter le nombre de sous-dossier dans un dossier
   2 - je souhaite mettre mes liens uniquement sur les dossiers qui sont le plus au bout de l'arborescence (donc ceux qui n'ont pas de sous dossier). Ex :

rep1
   rep1.1 << lien
   rep1.2
      rep1.2.1 << lien
      rep1.2.2 << lien
   rep1.3 << lien
rep2 << lien
rep3
   rep3.1 << lien
rep4 << lien
rep5
   rep5.1 << lien
   rep5.2
      rep5.2.1 << lien

C'est là qu'est l'os !! (enfin pour moi)
0
Rejoignez-nous