| Autor | Zpráva | ||
|---|---|---|---|
| Kubista Profil |
#1 · Zasláno: 21. 12. 2008, 00:04:57
Zdravím,
snažím se zazipovat obsah adresáře, to se mi daří, ale chtěl bych, aby se výsledný "zip soubor" nikam na webu neukládal a nabídl se uživateli přímo na stažení. Zipování provádím takto: $zip = new ZipArchive; $zip -> open($zip_name, ZipArchive::CREATE); ... Pokud to jde, může mi někdo poradit? Díky moc :-) |
||
| Medvídek Profil |
#2 · Zasláno: 21. 12. 2008, 10:43:12
používám toto:
<?php
require "zip.lib.php";
$zip = new zipfile();
$slozka=$_GET["slozka"];
$adr=Dir("./$slozka/");
while ($file=$adr->Read()){
if (!(($file==".")||($file=="..")||($file=="index.php"))){
$files[]="$file";
}
}
$adr->Close();
@Sort($files);
$max=SizeOf($files);
for ($i=0;$i<$max;$i++){
$filename="./$slozka/$files[$i]";
$f=FOpen($filename,"r");
$add_to_zip = fread ($f, filesize ($filename));
FClose($f);
$zip->addFile($add_to_zip, "$files[$i]");
}
$info="Staženo ze stránek TOMJANDA dne " . Date("d.m.Y");
$zip->addFile($info,"_info.txt");
header("Content-Type: application/x-zip");
header("Content-disposition: attachment; filename=".$slozka.".zip");
echo $zip->file();
}
?> |
||
| Leo Profil |
#3 · Zasláno: 21. 12. 2008, 10:51:07
"aby se výsledný "zip soubor" nikam na webu neukládal a nabídl se uživateli přímo na stažení"
Ty dve veci se nevylucuji, muzete ho na disk serveru ukladat (uz kvuli snizeni zateze, nemusi se zipovat pokazde znovu) a presto ho nabidnout ke stazeni, Leo |
||
| Kubista Profil |
#4 · Zasláno: 21. 12. 2008, 11:34:46 · Upravil/a: Kubista
Leo
Dobře, když ho tedy nechám uložen na serveru, tak jak později kontrolovat jestli náhodou někdo nepřidal, nebo nesmazal soubory v adresáři, který bude zazipován? :-) |
||
| Leo Profil |
#5 · Zasláno: 21. 12. 2008, 12:32:25
"tak jak později kontrolovat jestli náhodou někdo nepřidal, nebo nesmazal soubory v adresáři, který bude zazipován? :-)"
Stejne jako to musite delat kdyz je chcete zazipovat ne? Proste projdete adresar. Obvykle ma ovsem o souborech na webu prehled nejaky redakcni system, a zmeny se delaji pres nej. Leo |
||
| Kubista Profil |
#6 · Zasláno: 21. 12. 2008, 17:01:34
Leo
Díky moc za rady :-) |
||
|
Časová prodleva: 17 let
|
|||
0