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(".");
?>







Commenti

1 - fau72Dom 26 Giu 2016 - 11:12:50  

Ciao, risolto il problema dell opendir.
Ma non funziona l' apertura a tendina. Mi apre un menu ad albero completo e totale senza effetto tendina.
grazie mille ciao


2 - fau72Ven 24 Giu 2016 - 18:08:02  

Ciao,
scusami in anticipo, ma sono un po novelino in php.
Cmq ho trovato questo tuo esempio :
http://lemonsong.altervista.org/test_elenco_dir/pagina-1.php
ed ho subito capito che era perfetto per quello che volevo fare io.
L'ho inserito nella mia pagina, ma non funziona.
Ho provato invece quello che c'è scritto sopra e funziona benissimo.
il codice mi sembra quasi identico e allora perchè l' altro non riesco a farlo funzionare?

L' errore è sempre lo stesso .
---------------
- Warning: opendir(/foto) [function.opendir]: failed to open dir: No error in D:\inetpub\webs\fau72com\foto\elenco_dir.php on line 17
Percorso errato
--------------
Ma con l' altro codice non ho questo problema. Dove sbaglio?
La chiamata a funzione? La lcazione del file?
O qualcosa mi sfugge.
Sarei stra contento di essere aiutato da chi sicuramente sa programmare e chiedo cortesemente il tuo aiuto.
Grazie mille
ciao


3 - fau72Ven 24 Giu 2016 - 17:21:47  

Ciao,
scusami in anticipo, ma sono un po novelino in php.
Cmq ho trovato questo tuo esempio :
http://lemonsong.altervista.org/test_elenco_dir/pagina-1.php
ed ho subito capito che era perfetto per quello che volevo fare io.
L'ho inserito nella mia pagina, ma non funziona.
Ho provato invece quello che c'è scritto sopra e funziona benissimo.
il codice mi sembra quasi identico e allora perchè l' altro non riesco a farlo funzionare?

L' errore è sempre lo stesso .
---------------
- Warning: opendir(/foto) [function.opendir]: failed to open dir: No error in D:\inetpub\webs\fau72com\foto\elenco_dir.php on line 17
Percorso errato
--------------
Ma con l' altro codice non ho questo problema. Dove sbaglio?
La chiamata a funzione? La lcazione del file?
O qualcosa mi sfugge.
Sarei stra contento di essere aiutato da chi sicuramente sa programmare e chiedo cortesemente il tuo aiuto.
Grazie mille
ciao


4 - fau72Ven 24 Giu 2016 - 17:10:10  

Ciao,


5 - GIUSEPPEDom 14 Feb 2016 - 19:14:14  

ciao ...un aiuto....anticipo....nn sono molto pratico---ho un problema con una mia cartella presente sul server di aruba ma n pubblicata sul sito. Vorrei riempirla di file .. per po linkare l'indirizzo nella parte "Area Riservata" del mio sito.
Attualamente riesco solo a linkare il file in essa contenuto....ma nn riesco ad avere ,invece, una cartella che mi elenca tt i file in essa contenuti.
Ti ringranzio anticipatamente per il tuo aiuto......
Ciao


6 - paperinik4Ven 07 Ago 2015 - 11:58:32  

Salve,

A me servirebbe elencare directori e sottodirectory compresi i file. Senza sottolineatura. Poi li debbo memorizzare in un db. Mi potresti dare una mano per favore ??? Sto impazzendo da mesi senza ottenere un risultato decente. Grazie.


7 - lucioGio 04 Dic 2014 - 15:54:26  

Non riesco a fare in modo che si espandono solo le cartelle selezionate per intenderci come la vrainate 1 di qui :
http://lemonsong.altervista.org/test_elenco_dir/pagina-1.php variante1


8 - tindaroMar 23 Set 2014 - 20:42:58  

Veramente ottima. Però anche io vorrei sapere come avere un elenco in ordine alfabetico di file e cartelle.


9 - LucasMer 25 Giu 2014 - 12:47:55  

Ciao, Avrei bisogno di poter visualizzare il contenuto di una specifica cartella, in un determinato percorso, quali parametri devo cambiare?
Ciao Grazie


10 - AnonimoMar 11 Set 2012 - 12:41:47  

Grazie! Mi hai risparmiato una gran fatica.
Una domanda: cosa devo aggiungere per elencare i file in ordine alfabetico?


Scrivi un commento

Pui scrivere quì sotto un commento all'articolo che hai appena letto. Non sono abilitate smile, immagini e link. La lunghezza massima del commento è 4000 caratteri. La buona educazione è benvenuta, tutti i commenti offensivi saranno cancellati.

Your comment (lascia bianco!):
Utente (max 25 caratteri, obbligatorio)
Sito web (max 255 caratteri, facoltativo)
e-Mail (max 255 caratteri, facoltativa, non sarà pubblicata) Your opinion (lascia bianco!):
Commento (max 4000 caratteri, obbligatorio):





Valid HTML 4.01 Transitional
E-Mail - 3.19 ms

Valid HTML 4.01 Transitional