Hallo,

Ik heb een vraag. Met een php script wil ik de een tree-view maken van een folder op mijn server. de bedoeling is dat als ik in de folder waar ik in zoek (folder:base) alle folders(folder 1) weergeef en alleen de 1e subfolders (folder 1a-z) van folder 1 laat zien. Dus bijv:

Folder base= root

Folder 1 bevat:
-subfolder 1a
-subfolder 1b
-subfolder 1c
-subfolder 1d

Folder 2 bevat:
-subfolder 2a
-subfolder 2b
-subfolder 2c
enz.

Ik dacht dit te kunnen doen met onderstaand script, maar er gaat iets fout:


<ul>
<?php
$dir = "files/";  // mijn basefolder
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
  while (($file = readdir($dh)) !== false) {
   $files[] = trim($file); 
  }
  sort($files);
  foreach($files as $file){
   if ($file != "." && $file != ".." && is_dir($dir.$file)){
    // laat de eerste laag zien, dus folder 1, folder 2 enz
    echo '<li>'.$file;
     if ($dh_sub = opendir($dir.$file)) {
      while (($file_sub = readdir($dh_sub)) !== false) {
       $files_sub[] = trim($file_sub); 
      }
      sort($files_sub);
      echo '<ul>';
      foreach($files_sub as $file_sub){
       if ($file_sub != "." && $file_sub != ".." && $file_sub != "" && is_dir($dir.$file.'/'.$file_sub)){
       // laat de subdirectories van folder 1, folder2 zien
        echo '<li>'.$file_sub;
        echo '</li>';
       }
      }
      echo '</ul>';
     }   
    echo '</li>';
   }
  }
 }
}
?>
</ul>


Wat hij nu weergeeft is dit:

<ul>
  <li>Folder 1
      <li>subfolder 1a</li>
      <li>subfolder 1b</li>
      <li>subfolder 1c</li>
      <li>subfolder 1d</li>
  </li>
  <li>Folder 2
    <ul>
      <li>subfolder 1a</li>
      <li>subfolder 1b</li>
      <li>subfolder 1c</li>
      <li>subfolder 1d</li>
      <li>subfolder 2a</li>
      <li>subfolder 2b</li>
      <li>subfolder 2c</li>
    </ul>
  </li>
</ul>


Alleen wil ik niet dat hij de subfolders uit folder 1 bij de subfolders van folder 2 laat zien.

Wat doe ik fout.

tnx

Wim
Heb je hier misschien wat aan?
Tnx SanThe

Ik denk het wel, maar als ik het goed begrijp geeft hij nu alle mappen terug die in bijvoorbeeld folder 1 staan, plus alle submappen en eventueel hun submappen?

Zo ja, als ik meer dan 100 mappen en bestanden in mijn base heb staan, krijg ik dan geen timeout omdat het zoeken er lang kan duren?

Probeer het, zou ik zeggen.
tnx :D,

maar ik wil het in een soort online ajax explorer verwerken die ik voor mijn eigen site wil maken. En dan wil ik er straks niet achter komen dat ik een timeout krijg.

Ik ga er wel mee stoeien, tnx, maar weet jij misschien ook waarom mijn script geen goede waarden teruggeeft?

Ik zou namelijk graag willen weten wat ik fout doe

Reageren