[php] file manager
Inviato: 10 giu 2010, 14:37
Avevo la necessita' di un semplice file manager (solo visualizzazione di file e directory, con la possibilita' di esplorare il disco fisso) da usare in php. Ho fatto un po' di ricerche sul web, ma non ho trovato quello che mi serviva.
Qualcuno mi ha consigliato di usare il webmin che, fra le altre cose, ha pure un file manager (mi sembra sia fatto in java). Dato che tutto il webmin non mi serve e che comunque per la mia applicazione ho bisogno di leggerezza, ho pensato di crearmi uno script che servisse allo scopo.
Magari prima o poi potrebbe tornare utilie anche ad altri, per cui lo pubblico qui
hth
Qualcuno mi ha consigliato di usare il webmin che, fra le altre cose, ha pure un file manager (mi sembra sia fatto in java). Dato che tutto il webmin non mi serve e che comunque per la mia applicazione ho bisogno di leggerezza, ho pensato di crearmi uno script che servisse allo scopo.
Magari prima o poi potrebbe tornare utilie anche ad altri, per cui lo pubblico qui
- Codice: Seleziona tutto
<?php
if (!IsSet($_GET['home']))
$dir = substr($_SERVER['SCRIPT_FILENAME'],0,-strlen($_SERVER['SCRIPT_NAME'])) . '/';
else
{
$dir = $_GET['home'];
// la navigazione in . o .. funziona, ma l'url si allunga inutilmente, lo sistemo
$pezzi = explode("/",$dir);
$quanti = sizeof($pezzi) - 1;
if ($pezzi[$quanti-1] == "..")
$quanti = $quanti - 2;
if ($pezzi[$quanti-1] == ".")
$quanti = $quanti - 1;
$ricostruito = "";
for ($g=0; $g<$quanti; $g++)
$ricostruito=$ricostruito.$pezzi[$g] . "/";
$dir = $ricostruito;
}
print $dir . "<br><br>";
chdir($dir); // altrimenti funziona solo con la dir in cui c'e' questo file .php
$leggidir = opendir(".");
print "<b>subdir:</b><br>";
while($corrente = readdir($leggidir))
if (is_dir($corrente))
print "<a href='esplora.php?home=" . $dir . $corrente . "/'>" . $corrente . "<a><br>";
rewind($leggidir);
print "<br><b>file:</b><br>";
while($corrente = readdir($leggidir))
if (is_file($corrente))
print $corrente . "<br>";
closedir($leggidir);
?>
hth