Visualizzazione dei risultati da 1 a 9 su 9

Discussione: creazione archivi

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    181

    creazione archivi

    Se qualcuno conosce già uno script che crei archivi(non importa in che formato,basta che non richiedano installazioni) leggendo automaticamente la cartella,le sottocartelle e i file contenuti in essi e puo postarlo:grazie.
    Altrimenti sapete dirmi come fare,ho letto un po' online,ma mi mancano alcune informazioni:ho trovato questo script che crea una lista di cartelle,sottocartelle e file:
    Codice PHP:
    funzione ScanDirectory($Directory){  

      
    $MyDirectory opendir($Directory) or die('Error');  
     while(
    $Entry = @readdir($MyDirectory)) {  
      if(
    is_dir($Directory.'/'.$Entry)&& $Entry != '.' && $Entry != '..') {  
                             echo 
    '<ul>'.$Directory;  
       
    ScanDirectory($Directory.'/'.$Entry);  
                            echo 
    '[/list]';  
      }  
      else {  
       echo 
    '[*]'.$Entry.'';  
                    }  
     }  
      
    closedir($MyDirectory);  
    }  

    ScanDirectory('.'); 
    Però come faccio a ricreare la struttura nell'archivio? Ho letto alcuni script,ma vedo solo un elenco di file da inserire e nessuna cartella...

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ma in che senso "creare l'archivio"? devi gestire un db tipo mysql o sqlite? in questo caso dovresti progettare la struttura del db, ma se vuoi ti suggerisco una soluzione:

    si può creare un'unica tabella "files" con almeno i campi "id" (id incrementale automatico), "name" (il nome del file"), "folder" (booleano per indicare se è un file o una cartella) e "parent" (l'id della cartella contenitore).

    Se avessi:

    root
    - subfolder1
    - subfolder11
    - file111
    - file112
    - file11
    - file12
    - file1

    nella tabella potresti avere:

    (id, name, folder, parent)
    1, 'subfolder1', true, 0
    2, 'subfolder11', true, 1
    3, 'file111', false, 2
    4, 'file112', false, 2
    5, 'file11', false, 1
    6, 'file12', false, 1
    7, 'file1', false, 0

    Nello script che fa la scansione (tipo quello che hai postato) basta che crei un array multiplo e poi inserisci i dati nella tabella

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    181
    mi serviva creare l'archivio per il download di una cartella e il suo contenuto(tipo dropbox o credo un qualsiasi simil-sito).
    codice:
    cartella
         file
         file
         cartella
              file
              file
              cartella
                   file
    file
    file
    e via così mantenedno la struttura(cartelle e sottocartelle con relativi file)

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ancora non ho ben capito... cosa intendi con "archivio"? non è allora quello che dicevo nel mio post precedente? forse vuoi fare un file tipo ".zip"?

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    181
    sì .zip .tar ecc file compressi
    Scusa se non sono stato chiaro

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    un po' di ricerca allora... parti con Create ZIP from folder

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    181
    Non capisco solo una cosa:lo script legge anche le sotoocartelle di sottocartelle?

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ovviamente basterebbe provare, cmq leggendo il codice al volo dovresti notare che a un certo punto c'è una chiamata ricorsiva (la funzione "get_files_from_folder" richiama se stessa)... quindi: .

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    181
    Grazie mille!

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.