#1 2009.11.20 05:23

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

добавление файлов с помощью PclZip

пишу
$arc->add("sss/file.jpg");
но архив остается без файла этого.
Как правильно добавить файл?

Неактивен

#2 2009.11.20 09:26

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

полный код давай.

Неактивен

#3 2009.11.20 11:38

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

этот уже стер
использую другой
та же история
Добавлено спустя   1 минуту  8 секунд:

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$createZip = new createZip;
$file_list = array();
recursiveReadDir (JAR_DATA_DIR, $file_list); // чтение директории с файлами
// Добавление файлов в архив
foreach($file_list as $c_file) {
if(is_dir($c_file)) { // создание директории в архиве
$c_file = str_replace(JAR_DATA_DIR, '', $c_file);
$createZip->addDirectory($c_file);
} else { // запись файлов
$fileContents = file_get_contents($c_file);
$c_file = str_replace(JAR_DATA_DIR, '', $c_file);
$createZip->addFile($fileContents, $c_file);
}
}

Добавлено спустя   3 минуты  1 секунду:
define ('JAR_DATA_DIR', JAR_ROOT_DIR.'resource/'); // папака с ресурсами JAVA приложения
Добавлено спустя   4 минуты  12 секунд:
инклудится отсюда CreateZipFile.class.php

Код:

1
span style="color: #0000BB"><?php/** * Class to dynamically create a zip file (archive) * * @author Rochak Chauhan */class createZip { var $compressedData = array(); var $centralDirectory = array(); // central directory var $endOfCentralDirectory = "\x50\x4b\x05\x06\x00\x00\x00\x00"; //end of Central directory record var $oldOffset = 0; /** * Function to create the directory where the file(s) will be unzipped * * @param $directoryName string * */ function addDirectory($directoryName) { $directoryName = str_replace("\\", "/", $directoryName); $feedArrayRow = "\x50\x4b\x03\x04"; $feedArrayRow .= "\x0a\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x00\x00\x00\x00"; $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("v", strlen($directoryName) ); $feedArrayRow .= pack("v", 0 ); $feedArrayRow .= $directoryName; $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $this -> compressedData[] = $feedArrayRow; $newOffset = strlen(implode("", $this->compressedData)); $addCentralRecord = "\x50\x4b\x01\x02"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x0a\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x00\x00\x00\x00"; $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("v", strlen($directoryName) ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $ext = "\x00\x00\x10\x00"; $ext = "\xff\xff\xff\xff"; $addCentralRecord .= pack("V", 16 ); $addCentralRecord .= pack("V", $this -> oldOffset ); $this -> oldOffset = $newOffset; $addCentralRecord .= $directoryName; $this -> centralDirectory[] = $addCentralRecord; } /** * Function to add file(s) to the specified directory in the archive * * @param $directoryName string * */ function addFile($data, $directoryName) { $directoryName = str_replace("\\", "/", $directoryName); $feedArrayRow = "\x50\x4b\x03\x04"; $feedArrayRow .= "\x14\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x08\x00"; $feedArrayRow .= "\x00\x00\x00\x00"; $uncompressedLength = strlen($data); $compression = crc32($data); $gzCompressedData = gzcompress($data); $gzCompressedData = substr( substr($gzCompressedData, 0, strlen($gzCompressedData) - 4), 2); $compressedLength = strlen($gzCompressedData); $feedArrayRow .= pack("V",$compression); $feedArrayRow .= pack("V",$compressedLength); $feedArrayRow .= pack("V",$uncompressedLength); $feedArrayRow .= pack("v", strlen($directoryName) ); $feedArrayRow .= pack("v", 0 ); $feedArrayRow .= $directoryName; $feedArrayRow .= $gzCompressedData; $feedArrayRow .= pack("V",$compression); $feedArrayRow .= pack("V",$compressedLength); $feedArrayRow .= pack("V",$uncompressedLength); $this -> compressedData[] = $feedArrayRow; $newOffset = strlen(implode("", $this->compressedData)); $addCentralRecord = "\x50\x4b\x01\x02"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x14\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x08\x00"; $addCentralRecord .="\x00\x00\x00\x00"; $addCentralRecord .= pack("V",$compression); $addCentralRecord .= pack("V",$compressedLength); $addCentralRecord .= pack("V",$uncompressedLength); $addCentralRecord .= pack("v", strlen($directoryName) ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("V", 32 ); $addCentralRecord .= pack("V", $this -> oldOffset ); $this -> oldOffset = $newOffset; $addCentralRecord .= $directoryName; $this -> centralDirectory[] = $addCentralRecord; } /** * Fucntion to return the zip file * * @return zipfile (archive) */ function getZippedfile() { $data = implode("", $this -> compressedData); $controlDirectory = implode("", $this -> centralDirectory); return $data. $controlDirectory. $this -> endOfCentralDirectory. pack("v", sizeof($this -> centralDirectory)). pack("v", sizeof($this -> centralDirectory)). pack("V", strlen($controlDirectory)). pack("V", strlen($data)). "\x00\x00"; } /** * * Function to force the download of the archive as soon as it is created * * @param archiveName string - name of the created archive file */ function forceDownload($archiveName, $get_file_name) { $headerInfo = ''; if(ini_get('zlib.output_compression')) { ini_set('zlib.output_compression', 'Off'); } // Security checks if( $archiveName == "" ) { echo "<html><title>var Photo Directory - Download </title><body><BR><B>ERROR:</B> The download file was NOT SPECIFIED.</body></html>"; exit; } elseif ( ! file_exists( $archiveName ) ) { echo "<html><title>var Photo Directory - Download </title><body><BR><B>ERROR:</B> File not found.</body></html>"; exit; } header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private",false); header("Content-Type: application/java-archive"); header("Content-Disposition: attachment; filename=".$get_file_name.";" ); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($archiveName)); readfile("$archiveName"); }}?>

Неактивен

#4 2009.11.20 11:49

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

Возможно, нет прав на перезапись zip архива.

Неактивен

#5 2009.11.20 11:53

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

короче неважно каким образом это сделать. главное вот что. архив создается и в первом и во втором случае. а добавить в архив немогу ничего
Добавлено спустя   1 минуту  31 секунду:
права уже дописывал скриптом и меняет на 777
до этого использовал другой скрипт, но при нагрузке он работает через раз
Добавлено спустя   3 минуты  31 секунду:
а все решил проблему
извиняюсь что потревожил. во втором случае действительно ошибка в правах была. а первый точно неработал. наверное ошибка в самом модуле PclZip была

Неактивен

#6 2009.11.20 12:16

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

Нет, в PCLZIP ошибок быть не могло. Возможно, ты не указал папку для временных файлов, или не указал что временных файлов создавать не нужно. Никогда не списывай проблемы на чужие продукты, тем боее на такие известные.

Неактивен

#7 2009.11.20 12:28

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

видать это на сервере проблема. поставил этот скрипт. и 1 из 5 закачек прерывается. немогу понять что такое
Добавлено спустя   1 минуту  19 секунд:
ну с созданием архивов раньше неработал поэтому трудно

Неактивен

#8 2009.11.20 13:00

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

попробуй заменить функцию forceDownload на эту http://wapinet.ru/forum/viewtopic.php?id=46

Неактивен

#9 2009.11.20 13:06

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

Код:

1
2
3
4
5
6
7
header('Accept-Ranges: bytes');
header('Content-Length: '.filesize(JARS_DIR.$fileName));
header('Content-Type: application/java-archive');
header('Connection: close');
header('Cache-control: no-cache');
header('Last-Modified: '.gmdate('r',time().' GMT'));
readfile(JARS_DIR.$fileName);

вот так отдаю файл

Неактивен

#10 2009.11.20 13:09

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

set_time_limit(9999);

Неактивен

#11 2009.11.20 14:11

Fuelen
Участник
Зарегистрирован: 2009.06.22
Сообщений: 229
Карма: 5
Профиль

Re: добавление файлов с помощью PclZip

10, Или 0
Добавлено спустя   2 минуты  1 секунду:
Аффтар, юзай ZipArchive


на хую вас вертів

Неактивен

#12 2009.11.20 14:21

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

Fuelen, 0 лучше не использовать, т.к. это может привести к неубиваемому процессу.
И насчет ZipArchive тоже не соглашусь) У PclZip больше возможностей.

Неактивен

#13 2009.11.20 17:31

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

А что скажете на счет такого класа

Код:

1
span style="color: #0000BB"><?php/** * Class to dynamically create a zip file (archive) * * @author Rochak Chauhan */class createZip { var $compressedData = array(); var $centralDirectory = array(); // central directory var $endOfCentralDirectory = "\x50\x4b\x05\x06\x00\x00\x00\x00"; //end of Central directory record var $oldOffset = 0; /** * Function to create the directory where the file(s) will be unzipped * * @param $directoryName string * */ function addDirectory($directoryName) { $directoryName = str_replace("\\", "/", $directoryName); $feedArrayRow = "\x50\x4b\x03\x04"; $feedArrayRow .= "\x0a\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x00\x00\x00\x00"; $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("v", strlen($directoryName) ); $feedArrayRow .= pack("v", 0 ); $feedArrayRow .= $directoryName; $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $feedArrayRow .= pack("V",0); $this -> compressedData[] = $feedArrayRow; $newOffset = strlen(implode("", $this->compressedData)); $addCentralRecord = "\x50\x4b\x01\x02"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x0a\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x00\x00\x00\x00"; $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("V",0); $addCentralRecord .= pack("v", strlen($directoryName) ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $ext = "\x00\x00\x10\x00"; $ext = "\xff\xff\xff\xff"; $addCentralRecord .= pack("V", 16 ); $addCentralRecord .= pack("V", $this -> oldOffset ); $this -> oldOffset = $newOffset; $addCentralRecord .= $directoryName; $this -> centralDirectory[] = $addCentralRecord; } /** * Function to add file(s) to the specified directory in the archive * * @param $directoryName string * */ function addFile($data, $directoryName) { $directoryName = str_replace("\\", "/", $directoryName); $feedArrayRow = "\x50\x4b\x03\x04"; $feedArrayRow .= "\x14\x00"; $feedArrayRow .= "\x00\x00"; $feedArrayRow .= "\x08\x00"; $feedArrayRow .= "\x00\x00\x00\x00"; $uncompressedLength = strlen($data); $compression = crc32($data); $gzCompressedData = gzcompress($data); $gzCompressedData = substr( substr($gzCompressedData, 0, strlen($gzCompressedData) - 4), 2); $compressedLength = strlen($gzCompressedData); $feedArrayRow .= pack("V",$compression); $feedArrayRow .= pack("V",$compressedLength); $feedArrayRow .= pack("V",$uncompressedLength); $feedArrayRow .= pack("v", strlen($directoryName) ); $feedArrayRow .= pack("v", 0 ); $feedArrayRow .= $directoryName; $feedArrayRow .= $gzCompressedData; $feedArrayRow .= pack("V",$compression); $feedArrayRow .= pack("V",$compressedLength); $feedArrayRow .= pack("V",$uncompressedLength); $this -> compressedData[] = $feedArrayRow; $newOffset = strlen(implode("", $this->compressedData)); $addCentralRecord = "\x50\x4b\x01\x02"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x14\x00"; $addCentralRecord .="\x00\x00"; $addCentralRecord .="\x08\x00"; $addCentralRecord .="\x00\x00\x00\x00"; $addCentralRecord .= pack("V",$compression); $addCentralRecord .= pack("V",$compressedLength); $addCentralRecord .= pack("V",$uncompressedLength); $addCentralRecord .= pack("v", strlen($directoryName) ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("v", 0 ); $addCentralRecord .= pack("V", 32 ); $addCentralRecord .= pack("V", $this -> oldOffset ); $this -> oldOffset = $newOffset; $addCentralRecord .= $directoryName; $this -> centralDirectory[] = $addCentralRecord; } /** * Fucntion to return the zip file * * @return zipfile (archive) */ function getZippedfile() { $data = implode("", $this -> compressedData); $controlDirectory = implode("", $this -> centralDirectory); return $data. $controlDirectory. $this -> endOfCentralDirectory. pack("v", sizeof($this -> centralDirectory)). pack("v", sizeof($this -> centralDirectory)). pack("V", strlen($controlDirectory)). pack("V", strlen($data)). "\x00\x00"; } /** * * Function to force the download of the archive as soon as it is created * * @param archiveName string - name of the created archive file */ function forceDownload($archiveName, $get_file_name) { $headerInfo = ''; if(ini_get('zlib.output_compression')) { ini_set('zlib.output_compression', 'Off'); } // Security checks if( $archiveName == "" ) { echo "<html><title>var Photo Directory - Download </title><body><BR><B>ERROR:</B> The download file was NOT SPECIFIED.</body></html>"; exit; } elseif ( ! file_exists( $archiveName ) ) { echo "<html><title>var Photo Directory - Download </title><body><BR><B>ERROR:</B> File not found.</body></html>"; exit; } header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private",false); header("Content-Type: application/java-archive"); header("Content-Disposition: attachment; filename=".$get_file_name.";" ); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($archiveName)); readfile("$archiveName"); }}?>

Неактивен

#14 2009.11.20 19:55

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

скажу точно тоже самое. PclZip умеет много больше.

Неактивен

#15 2009.11.21 11:05

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

Код:

1
span style="color: #0000BB"><?phpreguire_once("pclzip.lib.php"); //подключаем библиотекуif (file_exists("archive.zip")) {unlink("archive.zip");} //удаляем старый файл архива$arc = new PclZip("archive.zip"); //создаем новый архив$arc->add("page.htm"); //добавляем файл page.htm в архив$d = opendir("img"); //добавляем также в архив все файлы из папки imgwhile ($f = readdir($d)) {if (!file_exists($f)) {$arc->add("./img/".$f);};}?>

вот так я пробовал создавать архив
уточните PclZip сделает это качественние чем клас выше или просто он больше всего умеет

Неактивен

#16 2009.11.21 12:32

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

больше умеет. допустим, чтение папки, как сделано у тебя, в pclzip можно не делать, а просто указать папку которую нужно добавить.

Неактивен

#17 2009.11.21 12:40

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

WebGraf написал:

Код:

1
span style="color: #0000BB"><?phpreguire_once("pclzip.lib.php"); //подключаем библиотекуif (file_exists("archive.zip")) {unlink("archive.zip");} //удаляем старый файл архива$arc = new PclZip("archive.zip"); //создаем новый архив$arc->add("page.htm"); //добавляем файл page.htm в архив$d = opendir("img"); //добавляем также в архив все файлы из папки imgwhile ($f = readdir($d)) {if (!file_exists($f)) {$arc->add("./img/".$f);};}?>

1. Что в этом коде неверно или чего нехватает?
2. по скорости работы PclZip будет лучше?

Неактивен

#18 2009.11.21 13:04

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

не reguire_once, а require_once

Код:

1
2
3
4
require 'pclzip.lib.php'; //подключаем библиотеку
 
$arc = new PclZip('archive.zip'); //создаем объект
$arc->create('page.htm,img', PCLZIP_OPT_REMOVE_ALL_PATH); // добавляем файлы

Добавлено спустя    48 секунд:
по скорости не знаю. в любом случае, по скорости будут быстрее встроенные в PHP функции для работы с архивами.

Неактивен

#19 2009.11.21 13:06

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

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

Отредактировано WebGraf (2009.11.21 13:13)

Неактивен

#20 2009.11.21 13:08

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

WebGraf написал:

ну раз встроенные то нужно сервак ковырять

логики что-то не уловил..)
если файлы не добавляет, проверь пути к ним.

Неактивен

#21 2009.11.21 13:15

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

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

Неактивен

#22 2009.11.21 13:23

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

http://ru.php.net/zip

Неактивен

#23 2009.11.21 13:24

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

значит верно понял.
ZipArchive у меня не работает
модуля нету установленного

Отредактировано WebGraf (2009.11.21 13:24)

Неактивен

#24 2009.11.21 13:31

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

выполни это var_dump(class_exists('ZipArchive'));

Неактивен

#25 2009.11.21 13:45

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

bool(false)

Неактивен

#26 2009.11.21 13:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

smile) фигово)

Неактивен

#27 2009.11.21 14:05

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

эт я уже понял))
Добавлено спустя   5 минут  24 секунды:
По поводу PclZip. Нужно указывать путь к файлу от сервера или можно просто указать файл в текущей директории?

Неактивен

#28 2009.11.21 14:44

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

как хочешь

Неактивен

#29 2009.11.21 16:07

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

уже установили Zip

Неактивен

#30 2009.11.21 16:57

Fuelen
Участник
Зарегистрирован: 2009.06.22
Сообщений: 229
Карма: 5
Профиль

Re: добавление файлов с помощью PclZip

Геморрой, ZipArchive удобнее. ИМХО smile


на хую вас вертів

Неактивен

#31 2009.11.21 17:19

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

файлы добавляются. кроме этого
где здесь ошибка

Код:

1
2
3
4
5
$n = 'www';
$init_data = join(file($dir.'file'));
$init_data = str_replace('#NAME#', $n, $init_data);
$zip->addEmptyDir('folder');
$zip->addFile($init_data, 'folder/file');

Добавлено спустя   1 минуту  25 секунд:
все выполняется, кроме последней строки.
хотя есть прописать
$zip->addFile($dir.'file', 'folder/file');
все в норме

Неактивен

#32 2009.11.21 17:35

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

Пошел в обход. добавил файл и произвел манипуляцию с помощью addFromString

Неактивен

#33 2009.11.21 18:22

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: добавление файлов с помощью PclZip

$init_data = join(file($dir.'file')); - вот это маразм.
в мануале же ясно написано, что addFile добавляет данные из ФАЙЛА, а ты пихаешь туда строку с данными.

Неактивен

#34 2009.11.21 18:45

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

поэтому и неработало. ну главное выход нашел

Неактивен

#35 2009.11.21 20:00

WebGraf
Участник
Зарегистрирован: 2009.07.21
Сообщений: 134
Карма: 1
Профиль

Re: добавление файлов с помощью PclZip

И вообщето я недочитал мануал. Взял из другого скрипта и скопировал.

Неактивен

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.2
0.026 s