Passa ai contenuti principali

PHP - Uno script per leggere i dati di una cartella

Spesso abbiamo necessità di dover visualizzare sul nostro sito (o cartella) tutti i file che vi sono.
Per fare questo, a volte si usa una funzione nella creazione del VirtualHost (vedi Linux - Apache2 - Attivare i Virtual Host per avere più domini su un server).

Ma, salvo  casi particolarissimi, è altamente sconsigliato.



PHP ci viene incontro con questo semplicissimo script (clicca qui per scaricare il file txt da rinominare in php) che riporto sotto:


// dicecca.net - Blog
//
// Script PHP per visualizzare i file di una cartella su Internet
//
// (C) 2014 - dicecca.net - Editorial Video Lab.
//
// File in licenza Common Creative

// Apri questa directory
$myDirectory = opendir(".");

// Prendi il contenuto
while($entryName = readdir($myDirectory)) {
    $dirArray[] = $entryName;
}

// Chiudi directory
closedir($myDirectory);

//    Conta gli elementi dell'array
$indexCount    = count($dirArray);
Print ("$indexCount files
\n");

// oirdina (usa sort come funzione)
sort($dirArray);

// pubblica gli elementi
print("\n");
print(" \n");
// loop through the array of files and print them all
for($index=0; $index < $indexCount; $index++) {
        if (substr("$dirArray[$index]", 0, 1) != "."){ // don't list hidden files
        print(" ");
        print("");
        print("");
        print(" \n");
    }
}
print(" \n");
?>

Commenti

Post più popolari

Mac OS X - Installare ed usare una stampante sul Print Server GetNet 3 Port 2 USB e 1 LPT

Abbiamo visto come installare il Print Server GetNet 3 in 1 sui più diffusi sistemi operativi Windows (vedi articoli correlati in fondo al post). La "scatoletta" ha anche un protocollo di comunicazione Apple Talk, quindi può essere collegata (fare da tramite) anche a stampanti che abbiano la gestione post script integrata (quasi tutte le stampanti salvo quelle del gruppo Ricoh che hanno bisogno di un apposito moduol installato) sul Mac. Print Server GetNet 1 Parallela e 2 USB Il metodo di installazione è molto simile a quello visto su Windows, con la differenza sostanziale che non è necessario scegliere tra moltissimi modelli, ma si gestisce in modo più semplice. Purtroppo sul Mac non è possibile (allo stato attuale) collegare print server di tipo TP-Link, ovvero replicatori di porta USB su Lan, in quanto non esiste un driver adatto. Detto questo, consideriamo la stampante che vogliamo collegare al Mac. Il caso che abbiamo usato nei precedenti post,

BlackBerry - Importare i dati da altri cellulari

English translated post Un amico mi porta un BlackBerry Pearl 8110 e mi chiede di trasferire i dati dal suo cellulare Nokia a questo telefono. Premesso che personalmente non ho mai reputato il BlackBerry un telefono "semplice", l'operazione si è reputata piuttosto complessa. Scartata l'idea di mandare i vcard via bluetooth (come si fa con quasi tutti i Nokia e Samsung), l'unica alternativa è quella di appoggiarsi a Microsoft Outlook !!! Come fare? 1 - Installare il Microsoft Outlook (XP o 2003) nel proprio PC 2 - Installare (nel caso specifico del Nokia) il programma Nokia PC Suite 3 - Sincronizzare solo la Rubrica (ovviamente dipende sempre se il cellulare Nokia è il Vostro o di un Vostro amico) del Nokia con l'Outlook, così che tutti i dati presenti nella Rubrica siano copiati nella sezione Contatti dell'Outlook 4 - Scaricare l'ultima versione del BlackBerry Desktop Manager (se il pacchetto è quello Vodafone, la versione sul CD non è molto efficac

Joomla! - Mettere la testata in Stampa

Come è noto Joomla! è uno dei più usati CMS (Content Managment System) che consente di avere un ambiente (environment) sul quale costruire e sviluppare siti e portali. Uno dei problemi più noti è quello di poter inserire la testata nel file da stampare. Ad esempio se il mio sito si chiama dicecca.net - Blog ed ha un logo particolare che voglio pubblicare come testata, nella conformazione classica, non posso farlo. Come risolvere? Premesso che tutto il sistema è scritto in linguaggio PHP, il file che viene chiamato in causa è component.php che si trova nella cartella /[sito (1)] /templates/system Il file ( che è possibile scaricare qui in formato testo ), alla riga 40 inizia il Body del testo. Alla riga 41 inizia l'inclusione del testo dell'articolo che si è deciso di stampare, che a sua volta viene aperto in una finestra popup. Dando un taso invio, dalla riga 41 è possibile inserire il riferimento ad una immagine e/o un formattato HTML della testata del nos