Сжать выбранную папку с клиентского компьютера перед загрузкой на сервер, используя php или фоновый процесс, используя exec('python')?
Создана загрузка php, которая принимает только сжатия rar,zip и tar. Но каждый пользователь не может сжимать и загружать на мой сайт. Есть ли способ сжать выбранную пользователем папку с клиентского компьютера, а затем начать загрузку на сайт. Как сбросить любой скрипт или приложение на клиентскую машину для сжатия папки. Дайте мне знать, если есть предложения.
1 ответ
Так как PHP на стороне сервера, вы не можете ничего с ним заархивировать. Тем не менее, простой запрос Google показал мне эту библиотеку JS: https://stuk.github.io/jszip/
Пример говорит это:
var zip = new JSZip();
zip.file("Hello.txt", "Hello World\n");
var img = zip.folder("images");
img.file("smile.gif", imgData, {base64: true});
zip.generateAsync({type:"blob"})
.then(function(content) {
// see FileSaver.js
saveAs(content, "example.zip");
});
Просто, не правда ли? Тогда все, что вам нужно сделать, это взять этот "example.zip" из javascript и загрузить его на свой сервер.
Надеюсь, я вам немного помог:)