2013-05-09 2 views
0

Я пытаюсь сделать загрузки файла сценарий, коллекции всех файлы и загрузить почтовый файл, который имеет эту коллекцию файлов не все структуры каталогов ..Не хочет структуру каталогов с ZipArchive

У меня есть файл в загрузки/folder1/folder1/filename.extension

здесь мои PHP коды:

if(!extension_loaded('zip')){ 
    echo "<script>alert('Error: Please contact to the Server Administrator!');</script>"; 
    exit; 
} 

$zip = new ZipArchive; 
if($zip->open($zipname, ZipArchive::OVERWRITE) === TRUE){ 
    foreach($files as $file){ 
     $zip->addFile(BASE_PATH.$file_path.'/'.$file, $file); 
    } 
    $zip->close(); 
} else { 
    echo "<script>alert('Error: problem to create zip file!');</script>"; 
    exit; 
} 

этот код дает мне структуру, как это:

enter image description here

дает полный путь WAMP (в том числе директор пути и файлы) и файлы, я просто хочу, чтобы добавить файлы не каталог ..

Может кто-нибудь сказать мне, что я пропустил ??

ответ

0

Каждый раз, когда ссылка на поставляется с уникальным ключом скачать, я просто добавить unique_key с именем Download.zip файла и его работы ...

// $db_secret_key Random Unique Number 
$zipname = $db_secret_key."_download.zip"; 

if(!extension_loaded('zip')){ 
    echo "<script>alert('Error: Please contact to the Server Administrator!');</script>"; 
    exit; 
} 


$zip = new ZipArchive; 
if($zip->open($zipname, ZipArchive::CREATE) === TRUE){ 
    foreach($files as $file){ 
      $zip->addFile(BASE_PATH.$file_path.'/'.$file, $file); 
    } 
    $zip->close(); 

    // Force Download 
    header("Content-Type: application/zip"); 
    header("Content-disposition: attachment; filename=$zipname"); 
    header("Content-Length: ".filesize($zipname).""); 
    header("Pragma: no-cache"); 
    header("Expires: 0"); 
    readfile($zipname); 
    exit; 
} else { 
    echo "<script>alert('Error: problem to create zip file!');</script>"; 
    exit; 
} 
Смежные вопросы