Ho dato un'occhiata alla struttura di Treeview.. Le funzionalità sono proprio quelle che mi servono, ma anche questo come gli altri ha un file js che crea il menu (DemoFramelessNodes.js). Se lo vuoi cambiare devi farlo manualmente.
Io ho bisogno di una struttura dove php legge una cartella al caricamento della pagina e, se la struttura ha delle sottocartelle ci mette il + altrimenti no. Non importa se avviene il reload della pagina, xchè tanto posso utilizzare un iframe.
Premetto che la struttura da visualizzare non è situata sul pc del client, ma sul server. (le cartelle da visualizzare sono situate all'interno della struttura del sito, senza fuoriuscire da quelli che sono i permessi di lettura del server al di fuori della root).
Vi posto il codice che ho sviluppato, funzionante, ma al cliccare della cartella desiderata, invece di espandere il sottomenu mantenendo la struttura, me la perde.
codice:
if ($dir=opendir($path)) {
$i=0;
while (($files=readdir($dir))!==false) {
if (is_dir($path."/".$files) && (($files !=".") && ($files!=".."))) {
$folders[$i]=$files;
if ($handle_sub=opendir($path."/".$folders[$i])) {
while (($file = readdir($handle_sub)) !== false) {
if (is_dir($path."/".$folders[$i]."/".$file)&&($file!=".")&&($file!=".."))
$sub_dir[$i]=1;
}
}
$i++;
}
}
}
con php controllo se $sub_dir vale 1. Se si aggiungo il + altirmenti no.
Ma non è esattamente quello che voglio, anche se ci è vicino.