как добавить все выбранные файлы в одну папку и сделать это в виде переполнения стека

Я сделал одну папку и добавить все файлы в эту папку, и когда я распаковываю папку, она показывает какую-то ошибку .. здесь ошибкавведите описание изображения здесь

вот мой код ..

 $files=$_POST['check_list'];
$zipname = 'kmm.zip';
$zip = new ZipArchive;
$zip->open('kmm.zip', ZipArchive::CREATE |ZipArchive::OVERWRITE);

foreach ($files as $file)
{
$file="audio/$file";
$zip->addFile($file);
$zip->close();
}

header('Content-Type: application/zip');
header("Content-Disposition: attachment; filename=kmm.zip");
header('Content-Length: ' . filesize($zipname));

-6

Решение

Прежде всего добавьте еще некоторые детали. Убедитесь, что ваши файлы не повреждены и не повреждены. Несколько лет назад я часами пытался заставить работать метод zip. Так что дважды проверьте это!
Попробуйте использовать это.

    $zip = new ZipArchive();
foreach ($files as $file) {



$filename = 'yourzip.zip';
$thisdir = 'audio/'; //This is directory

//check if file can be openend
if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) {
exit("cannot open <$filename>\n");
}
//This is where the magic happens
$zip->addFromString($file .'-'. time(), "Whatever you like to do with your files");
$zip->addFile($thisdir . $file");

}
echo "numfiles: " . $zip->numFiles . "\n";
echo "status:" . $zip->status . "\n";**strong text**
$zip->close();
?>

Перед тем, как закрыть молнию, убедитесь, что она завершена.
проверить это

echo "<pre>",print_r($zip->status),"</pre>";
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]