Есть ли способ загрузить сразу несколько zip с помощью PHP

Я загружаю несколько файлов в формате zip с помощью PHP, и он отлично работает. Я собираю все необходимые файлы и загружаю их как файл parent.zip.

Теперь, поскольку в моем zip-архиве много файлов, я хочу разбить zip-загрузку на части. скажем, когда пользователь нажимает кнопку, я хочу загрузить child1.zip, child2.zip и childn.zip в зависимости от частей, сгенерированных логикой. Как я мог сделать это в PHP.

Любая помощь будет оценена по достоинству. Спасибо


person opensource-developer    schedule 28.11.2013    source источник


Ответы (2)


Насколько я знаю, вы не можете отправить более одного вложения за ответ.

Лучше всего было бы заставить запрос принимать параметр part number, написать логику для создания только этой части zip и отправить этот конкретный файл в качестве вложения к этому конкретному ответу.

Тогда на стороне клиента можно одновременно выдать несколько «параллельных» запросов на загрузку, каждый с парт-номером.

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

person Kinjal Dixit    schedule 28.11.2013
comment
Привет, спасибо за ответ, как я могу запускать несколько параллельных одновременных запросов с использованием PHP или мне нужно использовать javascript/AJAX? Спасибо. - person opensource-developer; 28.11.2013

Мое мнение состояло бы в том, чтобы отправить запрос ajax и получить список загружаемых zip-файлов, которые временно создаются на сервере, и использовать javascript на стороне клиента для обработки загрузки, или другим вариантом было бы отправить несколько запросов на загрузку файла.

person Ujjwal Prajapati    schedule 28.11.2013
comment
Здравствуйте, не могли бы вы поделиться со мной примером кода JavaScript, который может обрабатывать загрузку. Спасибо - person opensource-developer; 28.11.2013
comment
Попробуй это. stackoverflow.com/ вопросы/4993468/ - person Ujjwal Prajapati; 28.11.2013