Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    elencare le sottodirectory

    ciao..!

    ho la necessita' di elencare le sottodirectory di una cartella a caso.. orbene.. questo codice..

    codice:
    <?
    $direct=".";
    if ($handle = opendir($direct)) {
        while (false !== ($file = readdir($handle))) {
            if (is_dir($file)) {
            echo "$file";
            echo "
    ";
            }
        }
        closedir($handle);
    }
    ?>
    funziona perfettamente... ma solo come lo vedete scritto... ovvero.. mi elenca le sottodirectory della cartella dove anche lui e' residente..

    ...ma se io assegno a $direct il nome di una qualsiasi altra directory...superiore o inferiore a quella di partenza... il codice non funziona piu' e mi viene segnalato questo errore..

    codice:
    Warning:  opendir(dir richiesta ) [function.opendir] : failed to open dir: No error in C:\xampp\htdocs\test\88\abc.php on line 3
    ..ho provato ad impostare $direct in vari modi ..ma senza successo..
    ..qualche suggerimento.....?? grazie.....

  2. #2
    Il problema e' che fai il check is_dir() solo sul nome del file, senza il path. Il che va bene quando ispezioni la directory in cui ti trovi (quindi il path relativo e' esattamente il nome del file), ma se specifichi un'altra directory, devi aggiungerla anche dentro il controllo is_dir().

    Codice PHP:
    <?
    $direct 
    "/path/to/dir/"/* con lo slash finale, e' importante */
    if ($handle opendir($direct)) {
        while (
    false != ($file readdir($handle))) {
            if (
    is_dir($direct $file)) {
                echo 
    $direct $file;
                echo 
    "
    "
    ;
            }
        }
        
    closedir($handle);
    }
    ?>

  3. #3
    ....funziona...grazie...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.