IMC!


Contenuti


Foto

 







Curiosando...
Novita  Novità Link  Link Blog  Blog English  Español 
Elenco di file e sottocartelle con link

Questa funzione in PHP si occupa di visualizzare ricorsivamente un elenco a albero dei file e delle sottocartelle contenuti al percorso indicato. Ciascun nome di file è un link al file stesso. La funzione può essere usata, ad esempio, per mettere online grandi quantità di file (come testi o pdf) senza l'utilizzo di un database. E' sufficiente inserire nella cartella specificata un file, e questo verrò automaticamente visualizzato nella pagine web che utilizza questa funzione. Per vederla in funzione potete andare nelle sezioni di Matematica, Elettronica o Informatica di questo sito.

Attenzione: La funzione utilizza delle immagini, che devono essere nella cartella foto. Potete scaricare il pacchetto completo quì:elenco_dir.rar

Codice di elenco_dir.php
<?PHP
# Questa funzione permette di visualizzare un elenco a albero dei file e delle sottocartelle contenuti in $base.
# Ciascun nome visualizzato è un link al file.
# Copyright: Isacco Coccato - www.giacobbe85.altervista.org

# NOTE:
# - Quando si specifica il percorso, NON mettere / alla fine.
# - Le immagini dei file e delle cartelle devono essere nella directory foto/

function elenco_dir($base)
{
$dir_vuota=1# Flag per il controllo della directory vuota
if ($handle_dir opendir($base)) # Apre la directory, e verifica che il percorso sia corretto
{
    echo 
"<UL class=\"testo\">\n"
  while (
false!==($dir readdir($handle_dir))) # Legge una voce del finchè non è finita la directory, e la memorizza in $dir
  
{
    if (
$dir!="." && $dir!=".."#Evita di stampare "." e ".."
    
{
      
$dir_vuota=0;
          if(
is_dir($base"/" .$dir))
          {
           
# Codice nel caso di directory
          
echo '<LI style="list-style-image: url(foto/cartella.gif)"><B>' $dir "</B>\n";
          
elenco_dir($base"/" .$dir); 
               echo 
"</LI>\n";
      }
       else
        {
          
#Codice nel caso di file
            # Evita di stampare alcuni tipi di file
                # Elimina l'estensione dei file, qualunque sia la sua lunghezza, e anche se compaiono altri punti nel nome del file
              
if ($dir != "." && $dir != ".." && $dir != "file_da_non_mostrare.est" && substr($dir,-3,3) != "estensione_da_non_mostrare")
        {
                   echo 
'<LI style="list-style-image: url(foto/file.gif)"><A href="' .$base '/' $dir '">' str_replace('_'' 'substr($dir,0strrpos($dir,"."))) . "</A></LI>\n";
              }
      }
    }
  }
    if (
$dir_vuota==1) echo '<LI class="testo" style="list-style-image: url(foto/sbagliato.gif)">Nessun file presente</LI>';    
  echo 
"</UL><BR>";    
  
closedir($handle_dir);
}
else 
#Codice nel caso di percorso non trovato
{
  echo 
"Percorso errato";
}
}    

# Chiamata della funzione come esempio
elenco_dir(".");
?>






Fatal error: Call to undefined function sqlite_open() in /membri/giacobbe85/include/commenti.inc.php on line 324