Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-12-2008, 18:44   #1
darp
Senior Member
 
L'Avatar di darp
 
Iscritto dal: Oct 2004
Messaggi: 4203
[PHP] errore su opendir...

EDIT.. risolto..
si può chiudere.. errore nel codice

Ultima modifica di darp : 14-12-2008 alle 04:59.
darp è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2008, 04:24   #2
darp
Senior Member
 
L'Avatar di darp
 
Iscritto dal: Oct 2004
Messaggi: 4203
Risolto!, si vede che sono un pò arruginito
l'errore non è del modulo php (sembrava strano... prb il modulo php usato su altervista disabilita i warning quando genera le pagine) ma nel modo come avevo realizzato la ricorsione. per chi vuole vedere la soluzione eccola:

-la prima funzione crea l'elenco in un array delle sottocartelle di una cartella
-la seconda è la ricorsione sulle cartelle stesse, quindi genera l'albero in un array tipo:

temp/old
temp
varie/foto
varie/pagine
varie
etc...

la terza serve ad eliminare dal path la cartella passata come $root dal risultato finale e ordinare l'array stesso
Quote:
function elencoDirSite($dir){
$dirs= array();
$contatore=0;
if ($handle = opendir($dir))
{
while ($file = readdir($handle))
{
//echo $dir."/".$file."<br />";
if (is_dir($dir."/".$file))
{
if (($file != ".") && ($file != "..")) {
$dirs[$contatore] = $file;
//echo $dirs[$contatore]."<br />";
$contatore++;
}
}//if
}//while
}//if
closedir($handle);
//showArray($dirs);
reset($dirs);
sort($dirs);
reset($dirs);
return $dirs;
}//elencoDirSite

function cicloDir($root,$dir_ciclo){
//seleziono la cartella da aprire
if ($dir_ciclo) $dir_def=$root."/".$dir_ciclo;
else $dir_def=$root;
$ciclo=elencoDirSite($dir_def);
$contatore=0;
$lista=array();
$listadef=array();
$def=0;
while($ciclo[$contatore]){
if ($dir_ciclo){
$lista=cicloDir($root,$dir_ciclo."/".$ciclo[$contatore]);
$lista[count($lista)]=$dir_ciclo."/".$ciclo[$contatore];
//echo $lista[count($lista)-1]."<br />";
}else{
$lista=cicloDir($root,$ciclo[$contatore]);
$lista[count($lista)]=$ciclo[$contatore];
//echo $lista[count($lista)-1]."<br />";
}//else
$contatore++;
$tmp=0;
while($lista[$tmp]){
$listadef[$def]=$lista[$tmp];
$tmp++;
$def++;
}//secondo while
}//while
//showArray($listadef);
return $listadef;
}//cicloDir

function creaElencoDirSite($root){
if ($root) $directory=getcwd().$root;
else $directory=getcwd();
$elenco=cicloDir($directory,NULL);
reset($elenco);
sort($elenco);
reset($elenco);
return $elenco;
}//creaElencoDirSite
darp è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2008, 04:25   #3
darp
Senior Member
 
L'Avatar di darp
 
Iscritto dal: Oct 2004
Messaggi: 4203
Risolto!, si vede che sono un pò arruginito
l'errore non è del modulo php (sembrava strano... prb il modulo php usato su altervista disabilita i warning quando genera le pagine) ma nel modo come avevo realizzato la ricorsione. per chi vuole vedere la soluzione eccola:

-la prima funzione crea l'elenco in un array delle sottocartelle di una cartella
-la seconda è la ricorsione sulle cartelle stesse, quindi genera l'albero in un array tipo:

temp/old
temp
varie/foto
varie/pagine
varie
etc...

la terza serve ad eliminare dal path la cartella passata come $root dal risultato finale e ordinare l'array stesso
Quote:
function elencoDirSite($dir){
$dirs= array();
$contatore=0;
if ($handle = opendir($dir))
{
while ($file = readdir($handle))
{
//echo $dir."/".$file."<br />";
if (is_dir($dir."/".$file))
{
if (($file != ".") && ($file != "..")) {
$dirs[$contatore] = $file;
//echo $dirs[$contatore]."<br />";
$contatore++;
}
}//if
}//while
}//if
closedir($handle);
//showArray($dirs);
reset($dirs);
sort($dirs);
reset($dirs);
return $dirs;
}//elencoDirSite

function cicloDir($root,$dir_ciclo){
//seleziono la cartella da aprire
if ($dir_ciclo) $dir_def=$root."/".$dir_ciclo;
else $dir_def=$root;
$ciclo=elencoDirSite($dir_def);
$contatore=0;
$lista=array();
$listadef=array();
$def=0;
while($ciclo[$contatore]){
if ($dir_ciclo){
$lista=cicloDir($root,$dir_ciclo."/".$ciclo[$contatore]);
$lista[count($lista)]=$dir_ciclo."/".$ciclo[$contatore];
//echo $lista[count($lista)-1]."<br />";
}else{
$lista=cicloDir($root,$ciclo[$contatore]);
$lista[count($lista)]=$ciclo[$contatore];
//echo $lista[count($lista)-1]."<br />";
}//else
$contatore++;
$tmp=0;
while($lista[$tmp]){
$listadef[$def]=$lista[$tmp];
$tmp++;
$def++;
}//secondo while
}//while
//showArray($listadef);
return $listadef;
}//cicloDir

function creaElencoDirSite($root){
if ($root) $directory=getcwd().$root;
else $directory=getcwd();
$elenco=cicloDir($directory,NULL);
reset($elenco);
sort($elenco);
reset($elenco);
return $elenco;
}//creaElencoDirSite
darp è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Pirateria audiovisiva: la Guardia di Fin...
Ubisoft conferma due nuovi Far Cry in sv...
Chi vincerà il Festival di Sanrem...
G42 e Cerebras portano in India un super...
Offerte aggiornate del weekend Amazon: 7...
4 MacBook Air in offerta e scende a 939€...
Chrome cambia il tuo modo di lavorare: o...
Minimo storico iPhone 17 su Amazon: 909€...
USA, incriminati tre ingegneri della Sil...
Xbox: Phil Spencer lascia dopo 38 anni, ...
Cuffie e sostanze chimiche: uno studio e...
Terremoto sui dazi USA: la Corte Suprema...
Arianespace potrebbe lanciare il primo r...
Google Pixel 10a disponibile al prezzo m...
Microsoft Copilot nei guai: email riserv...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:59.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v