codice:
function showDir($dir="./") { 
     $handle = opendir($dir); // apre la directory
     while ($file = readdir ($handle)) { // legge passo per passo i file nella dir fin quando readdir non ritorna false
        if (eregi("^\.{1,2}$", $file)) { // se il nome del file è uguale a . o .. continua
          continue; 
     } 
     if(is_dir($dir.$file)) { // se il file letto è una directory 
          showDir($dir.$file."/");  // richiama la funzione stessa con argomento la dir trovata
        } else { // altrimenti crea un link a $file
          echo "<a href='javascript:Richiama_SaveAS()'>";
		  echo $file;
		  echo "</a>
";
        } 
     } 
     closedir($handle); // chiude la dir
} 
showDir(); // richiama la funzione
a me sembra che manchi un else