Osaiskohan joku viisaampi neuvoa miten onnistuisi listaamaan tähän tapaan tiedostot kansiosta ?
kansio
....2.txt
....3.txt
....4.txt
....4.kansio // tätä ei näytetä
........5.txt
........6.txt
....7.txt
....8.txt
....8.kansio // tätä ei näytetä
........9.txt
....10.txt
Eli tarkoitus olisi näyttää kansiossa olevat tiedostot. Jos löytyy jonkun tiedoston niminen kansio, esim. etusivu.txt ja etusivu.kansio avataan se myös ja listataan sieltä suoraan ilman että kansion nimeä näytetään tiedostot edellä mainitun tiedoston alle.
Tämmösellä pätkällä toimii lähes niin kuin pitääkin mutta tässä on se ongelma että pitäisi saada johokin väliin yks echo erikseen noita alatiedostoja varten.
<?php function saatana($dir = '.', $exclude = array( '.', '..' )){ $exclude = array_flip($exclude); $dh = opendir($dir); $stack = array($dh); $level = 0; while(count($stack)){ if(false !== ( $file = readdir( $stack[0] ) ) ){ if(!isset($exclude[$file])){ if(is_dir($dir . '/' . $file)){ $dh = opendir($dir. '/' . $file ); if($dh){ echo " <tr><td>$file</td></tr> "; array_unshift($stack, $dh); } }else{ $file = substr($file, 0, strlen($file)-4); if (file_exists("$dir/$file")){ // EI MITN }else{ echo " <tr><td>$file</td></tr> "; } } } }else{ closedir(array_shift($stack)); } } } echo "<table border=\"1\">"; saatana( "$dataDir" ); echo "</table>"; ?>
Aihe on jo aika vanha, joten et voi enää vastata siihen.