Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. script visualizza file
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • P
      prinzart User Attivo • ultima modifica di

      script visualizza file

      in questo script posso visualizzare file o directory, ma non riesco a visualizzare i file che si trovano all'interno di quelle directory, secondo voi perchè?

      [PHP]

      <?php
      function dir_list($directory = FALSE)
      {
      $dirs= array();
      $files = array();

      if ($handle = opendir("./" . $directory))
      {
      while ($file = readdir($handle))
      {
      if (is_dir("./{$directory}/{$file}"))
      {
      if ($file != "." & $file != "..") $dirs[] = $file;
      }
      else
      {
      if ($file != "." & $file != "..") $files[] = $file;
      }
      }
      }
      closedir($handle);

      reset($dirs);
      sort($dirs);
      reset($dirs);

      reset($files);
      sort($files);
      reset($files);

      echo "<ul><strong>Cartelle:</strong>\n";
      while(list($key, $value) = each($dirs))
      {
      $d++;
      echo "<li><a href="{$value}">{$value}/</a>\n";
      }
      echo "</ul>\n";

      echo "<ul><strong>Files:</strong>\n";
      while(list($key, $value) = each($files))
      {
      $f++;
      echo "<li><a href="{$value}">{$value}</a>\n";
      }
      echo "</ul>\n";

      if (!$d) $d = "0";
      if (!$f) $f = "0";
      echo "Sono presenti <strong>{$d}</strong> cartelle e <strong>{$f}</strong> file(s).</strong>\n";
      }

      dir_list("../file_corsi/");
      ?>

      [/PHP]

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • J
        jeeves User Attivo • ultima modifica di

        Perché il tutto è fatto in una funzione, aggiungici la funzione return() nella funzione e poi usa la funzione 😉

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • P
          prinzart User Attivo • ultima modifica di

          @Jeeves said:

          aggiungici la funzione return() nella funzione e poi usa la funzione

          scusa ma non ho capito

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            Da me funziona, sbagli a mettere il percorso sicuramente

            PS se quando apri un topic metti pure l'errore che ti da forse è meglio, altrimenti non risponde nessuno 😉

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • P
              prinzart User Attivo • ultima modifica di

              veramente non mi da nessun'errore, funziona, sono solo i file dentro le directory che non me le visualizza. Ma non mi da nessun'errore.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • ultima modifica di

                Beh nello script non c'è nulla che dovrebbe fare quello che dici tu... se vuoi mostrati anche i file nelle cartelle devi richiamare la funzione per ogni cartella presente...

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • P
                  prinzart User Attivo • ultima modifica di

                  come potrei fare?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    thedarkita ModSenior • ultima modifica di

                    [php]
                    <?
                    $c = (isset($_GET['c'])) ? $_GET['c'] : '';

                    // Nome della cartella
                    $car = '../file_corsi/'.$c.'/';

                    function GetFile($car)
                    {
                    global $c;
                    // Se non è un cartella esco
                    if(!is_dir($car))
                    return 0;

                    // Opendir è la funzione per aprire la cartella
                    $handle = opendir($car);

                    // Ciclo la cartella
                    while (false !== ($files = readdir($handle)))
                    {
                    // Stampo i file
                    if ($files != '.' && $files != '..')
                    {
                    if(is_dir($car.$files))
                    $vc[] = $files;
                    else
                    $vf[] = $files;
                    }

                    }
                    // Stampa dei file
                    echo 'Catelle:<br>';
                    for($i=0; $i<count($vc); $i++)
                    echo '<a href="1.php?c='.$c.'/'.$vc*.'">'.$vc*.'</a><br>';
                    echo 'File:<br>';
                    for($i=0; $i<count($vc); $i++)
                    echo $vf*.'<br>';
                    }

                    // Richiamo La funzione
                    GetFile($car);
                    ?>
                    [/php]
                    Si basa su questo tutorial Mostrare il contenuto di una cartella

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • P
                      prinzart User Attivo • ultima modifica di

                      grazie, sei stato gentilissimo, ma con il tuo script si ottiene lo stesso risultato che ho ottenuto io con il mio script, ti fa vedere i file nella root principale e le directory, ma non i file che si trovano all'interno di quelle directory.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • ultima modifica di

                        Le cartelle hanno il collegamento... se ci clicchi vedi il contenuto 😄

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • P
                          prinzart User Attivo • ultima modifica di

                          si lo so, il problema è che se clicco mi apre una nuova pagina con scritto:

                          Not Found

                          The requested URL /proxima/1.php was not found on this server.

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • T
                            thedarkita ModSenior • ultima modifica di

                            sostituisci in <a href="1.php"> 1.php con il nome del tuo file

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • P
                              prinzart User Attivo • ultima modifica di

                              e se ci sono più file in quella directory?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • P
                                prinzart User Attivo • ultima modifica di

                                quello che avrei voluto fare era questo:

                                auto/mercedes.jpg
                                auto/renault.gif

                                moto/honda.doc
                                moto/scooter/sh.xls
                                moto/yamaha.zip

                                aeroplano.doc
                                elicottero.pdf

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • T
                                  thedarkita ModSenior • ultima modifica di

                                  CIoè vuoi visualizzarli tutti in una pagina? mmm

                                  è bello lungo come procedimento per il server...

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • P
                                    prinzart User Attivo • ultima modifica di

                                    ma non esistono script già pronti, cosa devo cercare su internet?

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • T
                                      thedarkita ModSenior • ultima modifica di

                                      Già fatti non ne conosco...

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • P
                                        prinzart User Attivo • ultima modifica di

                                        era per non disturbarti 🙂 però se invece ti va di aiutarmi, allora lo posso compilare con il tuo aiuto, però io di php non sono bravissimo, me la cavo un pò, ma questa cosa non riesco a farla 😞

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • T
                                          thedarkita ModSenior • ultima modifica di

                                          Mi sto confondendo con gli array ❌x:x

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • P
                                            prinzart User Attivo • ultima modifica di

                                            ho trovato questo codice che funziona, solo che non mi mette i link ai file:

                                            [PHP]
                                            <?php
                                            function list_elements($dir,$out)
                                            {
                                            $file_list = '';
                                            $stack[] = $dir;
                                            while ($stack)
                                            {
                                            $current_dir = array_pop($stack);
                                            if ($dh = opendir($current_dir))
                                            {
                                            while (($file = readdir($dh)) !== false)
                                            {
                                            if ($file !== '.' AND $file !== '..')
                                            {
                                            $current_file = "{$current_dir}/{$file}";
                                            if (is_file($current_file))
                                            {
                                            $file_list[] = "{$current_dir}/{$file}";
                                            }
                                            elseif (is_dir($current_file))
                                            {
                                            $stack[] = $current_file;
                                            $dirs[]=$current_file; //l' array delle directory
                                            //echo $current_file." corrisponde ad una directory<br>"; // questa
                                            }
                                            }
                                            }
                                            }
                                            }
                                            if ($out=='file')
                                            return $file_list;
                                            if ($out=='dir')
                                            {
                                            //$dirs=array_reverse($dirs);
                                            return $dirs;
                                            }
                                            }

                                            $dirs=list_elements("../file_corsi",'dir'); // QUI gli dici che cartella vuoi leggere e ti restiuisce le directory
                                            $files=list_elements("../file_corsi",'file'); // QUI gli dici che cartella vuoi leggere e ti restiuisce i files

                                            echo "<pre>";
                                            print_r($dirs);
                                            print_r($files);

                                            ?>
                                            [/PHP]

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti