Страницы

Поиск по вопросам

воскресенье, 12 января 2020 г.

Скачивание нескольких файлов с сервера

#php


Реализовать скачивание одного файла с сервера на комп пользователя не составляет
труда.А если пользователь выбирает из предложенного списка несколькофайлов, можно ли
реализовать на php их скачивание одним потоком? Я имею в виду, сделать так, чтобы окошко
"сохранить как " появилось только один раз.    


Ответы

Ответ 1



Можно сделать архив на стороне PHP, и все файлы вернуть в одном архиве.

Ответ 2



Тут показано как выбрать несколько файлов и скачать одним архивом. http://ruseller.com/lessons.php?rub=37&id=1763 Помещаем выбранные файлы в ZIP формат: 0) { // проверяем выбранные файлы $zip = new ZipArchive(); // подгружаем библиотеку zip $zip_name = time().".zip"; // имя файла if($zip->open($zip_name, ZIPARCHIVE::CREATE)!==TRUE) { $error .= "* Sorry ZIP creation failed at this time"; } foreach($post['files'] as $file) { $zip->addFile($file_folder.$file); // добавляем файлы в zip архив } $zip->close(); if(file_exists($zip_name)) { // отдаём файл на скачивание header('Content-type: application/zip'); header('Content-Disposition: attachment; filename="'.$zip_name.'"'); readfile($zip_name); // удаляем zip файл если он существует unlink($zip_name); } } else $error .= "* Please select file to zip "; } else $error .= "* You dont have ZIP extension"; } ?> Автор: Евгений Попов, под собственной лицензией.

Ответ 3



Думаю, браузер (в зависимости от своих настроек) либо не покажет окно с вопросом ни разу, либо покажет на каждый файл. Но вообще, это не должно бы вызывать особых проблем, поскольку каталог в диалоге уже будет выбран, соответственно, пользователю надо будет только подтвердить скачивания двух оставшихся файлов.

Комментариев нет:

Отправить комментарий