comprimere directory in formato zip

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, ho questo codice che funziona a meta perché mi dice che non trova:
<br />
<b>Warning</b>: chdir(): No such file or directory (errno 2) in <b>/web/htdocs/xxxx/home/zip_folders.php</b> on line <b>20</b><br />

e il codice è questo:
PHP:
<?php
    // WARNING
    // This code should NOT be used as is. It is vulnerable to path traversal. https://www.owasp.org/index.php/Path_Traversal
    // You should sanitize $_GET['directtozip']
    // For tips to get started see http://stackoverflow.com/questions/4205141/preventing-directory-traversal-in-php-but-allowing-paths
 
    //Get the directory to zip
    $filename_no_ext= $_GET['directtozip'];
 
    // we deliver a zip file
    header("Content-Type: archive/zip");
 
    // filename for the browser to save the zip file
    header("Content-Disposition: attachment; filename=$filename_no_ext".".zip");
 
    // get a tmp name for the .zip
    $tmp_zip = tempnam ("tmp", "tempname") . ".zip";
 
    //change directory so the zip file doesnt have a tree structure in it.
    chdir('/'.$_GET['directtozip']);
   
    // zip the stuff (dir and all in there) into the tmp_zip file
    exec('zip '.$tmp_zip.' *');
   
    // calc the length of the zip. it is needed for the progress bar of the browser
    $filesize = filesize($tmp_zip);
    header("Content-Length: $filesize");
 
    // deliver the zip file
    $fp = fopen("$tmp_zip","r");
    echo fpassthru($fp);
 
    // clean up the tmp zip file
    unlink($tmp_zip);
?>

idee? cosa devo mettere al chdir?

grazie mille. e buone feste.
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ok, ho modificato il codice e ora funziona, l'unico che mi fa cosi:
cartella.zip da 7.6mb e dentro c'è un file che si chiama z senza estensione e in tutto e di 20 mb e dove c'è veramente proprio tutto il sito compresso.
solo che in quello che mi fa aprire non comprime le sotto directory etc.. e invece il file dentro cartella.zip nominato z senza nulla c'è tutto .
come mai?
PHP:
<?php
	// http://www.travisberry.com/2010/09/use-php-to-zip-folders-for-download/   // questo il sito dove lo preso.
    //Get the directory to zip
    $filename_no_ext= $_GET['dir'];
 
    // we deliver a zip file
    header("Content-Type: archive/zip");
 
    // filename for the browser to save the zip file
    header("Content-Disposition: attachment; filename=$filename_no_ext".".zip");
 
    // get a tmp name for the .zip
    $tmp_zip = tempnam ("tmp", "tempname") . ".zip";
 
    //change directory so the zip file doesnt have a tree structure in it.
    chdir('/web/htdocs/www.nomedelsito.it/home/'.$_GET['dir']);
   
    // zip the stuff (dir and all in there) into the tmp_zip file
    exec('zip '.$tmp_zip.' *');
   
    // calc the length of the zip. it is needed for the progress bar of the browser
    $filesize = filesize($tmp_zip);
    header("Content-Length: $filesize");
 
    // deliver the zip file
    $fp = fopen("$tmp_zip","r");
    echo fpassthru($fp);
 
    // clean up the tmp zip file
    unlink($tmp_zip);
?>
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Espandere e comprimere testo con javascript e CSS tramite un link Javascript 1
L comprimere javascript Javascript 5
F comprimere swf Flash 0
F LETTURA FILE SU DIRECTORY IN RETE Javascript 0
Shyson Puntare ad una sotto directory WordPress 3
T Fpdf salvataggio su directory protetta PHP 0
R Download file multipli da directory php PHP 0
R Invio mail con allegati da directory PHP 1
R Cercare un file all'interno della directory virtuale IIS PHP 3
O file esistente in directory Java 1
T Dubbio su costante ROOT, che rappresenti la base directory del sito PHP 4
G Passare path directory in POST PHP 2
M [PHP] Selezionare immagini directory non presenti in db PHP 11
N Struttura ad Albero di Directory _ PHP PHP 2
A [PHP] Sovrascrivere immagini in directory PHP 2
L iis reindirizzamento globale a una directory virtuale Web Server 0
G [PHP] togliere sotto directory dall'url PHP 0
B APACHE-NASCONDERE DIRECTORY DALL'URL Web Server 0
V [WordPress] Download manager che "legge" directory WordPress 0
natalozzo85 [Vendo] Inserimento manuale in 100 directory italiane gratuite Vendere e Acquistare pubblicita' online 1
G [Vendo]Lista di 100 directory italiane free Vendere e Acquistare pubblicita' online 0
felino [PHP] Cancellare directory con file al suo interno PHP 2
M offro link in una nuva directory Offerte e Richieste di scambio links 0
mirko.dagata Lista Directory Italiane (SEO Friendly) SEO e Posizionamento 2
asevenx file e cartelle strane nella directory del sito wordpress WordPress 3
Z accesso lista file directory con browser HTML e CSS 4
gandalf1959 Scansione di file in una directory: non sono in ordine crescente. Come mai? PHP 8
A [CERCO SOCIO] per Rilancio sito Web Directory Offerte e Richieste di Lavoro e/o Collaborazione 0
Luca13 Directory ASP “Title” automatico Classic ASP 9
S Indicare una directory di destinazione per l'upload di un file PHP 1
M Eliminare immagini da directory / *dal database fatto! PHP 2
R Cambiare directory Wordpress WordPress 4
D Navigare fra le directory e aprire file PHP 3
D [vendo]Inserimento manuale in 100 directory Italiane Vendere e Acquistare pubblicita' online 2
L bloccare directory superiore ad uno script. PHP 0
C Directory upload qual è quella giusta? PHP 2
I IIS8 in dominio, accesso Directory Virtuale. Web Server 0
M copiare una cartella da una directory ad un altra PHP 0
M classi e struttura directory PHP 1
R [Offro] Inserimento siti in 40 directory+20 article marketing a €45 Offerte e Richieste di Lavoro e/o Collaborazione 0
B [Regalo] Backlink su free-directory.it Offerte e Richieste di scambio links 0
U [Offro] Inserimento in Directory Offerte e Richieste di Lavoro e/o Collaborazione 0
M [risolto] chmod su directory determinata da variabile PHP 2
C [VENDO] Lista 80 directory italiane minimo PR 3 Vendere e Acquistare pubblicita' online 0
G advhits.com - Directory gratuita per i vostri siti Presenta il tuo Sito 1
S [RISOLTO]alternativa al cookieless domain: cookieless directory. E' una buona idea? PHP 2
O [VENDO] Link testuali in network directory Vendere e Acquistare pubblicita' online 0
U [Offro]Inserimento manuale directory italiane NO BACKLINK Offerte e Richieste di Lavoro e/o Collaborazione 0
L directory ed replace PHP 0
G [Vendo] Segnalazione Top Directory Italiane + Visibilità su home directory pr4 Altri Annunci 0

Discussioni simili