Архивирование в zip

L-ZiX

Guest
Архивирование в zip

Доброго времени суток!
Я не сильно силён в пхп, поэтому прошу помощи у вас, ув. специалисты.
На нашем сайте возникла потребность загрузки файлов от пользователей. И для экономии места на сервере мне необходимо реализовать сжатие данных файлов в формат zip, и при неободимости выдачи файла пользователю из архива.
Пример: пользователь загружает через форму файл.txt, а уже после скрипт сам сжимает файл и сохраняет в формате файл.zip. Если позже пользольватель после захочет скачать себе загруженный файл, то мы должны предложить ему 2 варианта выгрузки: исходный и zip, поэтому необходимо ещё и реализовать распаковку.
В поиск прошу не отправлять. Где я только не был по поиску, но так и не нашёл точного ответа.
И ещё: реализация данной фишки должна работать на виндовз-платформе.
Помогите плиззз.....
 

_RVK_

Новичок
Кто тебе не дает использовать zip? [m]system[/m]. Вызывае его с необходимыми параметрами и пакуй/распаковывай что хочешь.
 

MD

Guest
набрав в поиске zip, обнаружил кучу интересных тем для чтения, в них кучу ссылок опять же для чтения и тестирования ... вообщем ступай туда. там все есть.
 

Макс

Старожил PHPClub
Пример: пользователь загружает через форму файл.txt, а уже после скрипт сам сжимает файл и сохраняет в формате файл.zip. Если позже пользольватель после захочет скачать себе загруженный файл, то мы должны предложить ему 2 варианта выгрузки: исходный и zip, поэтому необходимо ещё и реализовать распаковку.
В поиск прошу не отправлять. Где я только не был по поиску, но так и не нашёл точного ответа.
И ещё: реализация данной фишки должна работать на виндовз-платформе.
скрипт можно разбить на 3 задачи :
- upload файла на сервер
- архивирование файла
- download файла клиенту
все три темы (по отдельности) обсуждались сотни раз. Тебе надо найти информацию по каждой и собрать все в один скрипт.
 

L-ZiX

Guest
Diesel всмысле запуск проги типа pkzip ?
из этого следует что универсально для всех осей средствами пхп такого не реализовать и под каждую ось необходимо держать в каталоге сайта консольный архиватор??? (на случай отсутствия его в системе, да и вообще на всякий случай)
 

Макс

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

L-ZiX

Guest
Макс санкс за помощь. я сёдня в поиске уже пол дня торчу, то точного ответа не нашёл, т.к. кто-то реализовывает похожие задачи через либу zzlib, кто-то через shell_exec и т.д.
 

Макс

Старожил PHPClub
что значит "точный ответ" ? Готовый скрипт, который делает, то что ты описал ?
Здесь ты такого не найдешь. Здесь помогают писать скрипты, а не дают готовое
 

L-ZiX

Guest
Макс мне не нужен готовый скрипт. я лишь просил помощи. а под "точным ответом" подразумевается ответ на вопрос: можно ли реализовать всё это средствами пхп вне зависимости от оси?

Ещё вопросик можно?: для чего либа php_zip и если можно вкратце о её возможностях?
 

Макс

Старожил PHPClub
можно ли реализовать всё это средствами пхп вне зависимости от оси?
можно (зачем ты тогда уточнял, что работаешь под виндосом ?)
В форуме уже біли ссылки на библиотеки, реализующие zip-архивирование.

php_zip - позволяет только читать zip-файлы (то есть позволяет разархивировать zip-архив или получить какую-то информацию об архиве)
 

_RVK_

Новичок
L-ZiX
В PHP вообще многое зависит от настроек, установленных библиотек, подключенных екстеншенов, опций компиляции и тд. Так что выход один, реализовать ZIP алгоритм самостоятельно на PHP
 

L-ZiX

Guest
Diesel другими словами написать zip-архиватор самому?

SiMM как я понимаю это и есть возможности php_zip ?

-~{}~ 30.09.04 14:52:

Макс для того, чтобы дать понять что скрипты нашего сайта должны работать и на виндовсе и на юниксе. Просто локальный сервер с сети фирмы стоит на винде, ну а в инете естессно на юниксе.
 

Alexandre

PHPПенсионер
используй GZ метод архивации

Следует отметить, что модуль php_zip является подгружаемый и установлен не на всех хостингах
Пример: пользователь загружает через форму файл.txt, а уже после скрипт сам сжимает файл и сохраняет в формате файл.zip. Если позже пользольватель после захочет скачать себе загруженный файл, то мы должны предложить ему 2 варианта выгрузки: исходный и zip, поэтому необходимо ещё и реализовать распаковку.
L-ZiXПервое - как сказал МАКС : php_zip - позволяет только читать zip-файлы , т.е. создать ЗИП архив на сайте ты не сможешь,
но можно использовать GZip http://ru2.php.net/manual/en/ref.zlib.php

Модуль GZip включен по умолчанию всегда и есть на всех хостингах

метод GZip - реализован всеми виндовозными архиваторами (winzip. winrar )
сам не раз использовал gz архивацию для сжатия и пересылки данных.

и не надо изобретать велосипед с написанием собственных архиваторов и вызовов их через шелл
 

L-ZiX

Guest
Подскажите плизз, если выполнять вызов через шелл, то надо отправлять архиватору имя файла и параметры архивирования, а он запишет на жёсткий диск файл-архив?
или же можно отправлять вместо файла переменную, в которой содержится файл-исходник, а архиватор после выполнения операции сжатия вернёт в скрипт переменную со сжатым файлом?

-~{}~ 01.10.04 07:04:

что скажете по поводу PEAR Archive_Zip?
(где его взять? на пеар-овском сайте нет ссылки)

-~{}~ 01.10.04 07:20:

Господа: PclZip рулит!!!

-~{}~ 06.10.04 14:06:

Товарищи!!! Кто работал c pclZip, подскажите:
у меня проблемы с наличием запятых и кириллицы в имени файла, который я запаковываю.
Помогите pleazzze...

-~{}~ 07.10.04 07:27:

Неужели никто не использует либу pclZip???
Помогите please
 

korvin0

моська
скажите, а почему нельзя http://tony2001.phpclub.net/files/ziplib.phps воспользоваться?
 

L-ZiX

Guest
korvin0 честно сказать не разобрался я в этой либе
pclZip проще в использовании...
Вопросы остаются открытыми... прошу помощи у специалистов...
 

MpaK69

Новичок
в phpMyAdmin - есть библиотека для такого случая (архивирование), попользуй её.
 

L-ZiX

Guest
MpaK69 Мне необходимо ещё и распаковывать, так что этот вариант не пойдёт.
Что подскажете по поводу pclZip?

-~{}~ 08.10.04 07:08:

Люди-и-и-и-и.... ну помогите...
Инфы в инете на тему pclZip нету.....
Кто работал с pclZip?
Неужели надо новую тему создавать для этих вопросов...
 
Сверху