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,0, strrpos($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("."); ?>
Inserire la password di amministratore:
Fatal error: Call to undefined function sqlite_open() in /membri/giacobbe85/include/commenti.inc.php on line 324
|