powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Архивирование файла
79 сообщений из 79, показаны все 4 страниц
[PHP] Архивирование файла
    #38025148
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здравствуйте, делаю так
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 
//if - если, ! - отрицание, exists - существует
if(!file_exists($file_in_archive)) {
  $rar = new ZipArchive();
  //создание архива с именем ...
  $rar->open($file_archiving, ZIPARCHIVE::CREATE); 
  //добавление файла ... в архив с именем ...
  $rar->addFile($file_in_archive);
}
?>


но ведь не добавилось в корне хоста файла с переменной
Код: php
1.
$file_in_archive ='Правила дорожного движения РФ.7z';


подскажите что не так, спасибо
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025160
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Добавить $rar->close(); после обработки
и добавить обработку ошибок.

Может прав на запись не хватает, банально.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025163
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,
на пхп второй раз пишу, так:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 
//обработчик ошибок
error_reporing(E_ALL ^ E_NOTICE);
//if - если, ! - отрицание, exists - существует
if(!file_exists($file_in_archive)) {
  $rar = new ZipArchive();
//создание архива с именем ...
  $rar->open($file_archiving, ZIPARCHIVE::CREATE); 
//добавление файла ... в архив с именем ...
  $rar->addFile($file_in_archive);
  $rar->close(); 
//отображать все ошибки
error_reporting(E_ALL);  
}
?>
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025166
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

http://www.php.net/manual/ru/ziparchive.open.php
Читаем документацию (особенно по используемым методам), вникаем, и добавляем проверку на ошибки.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025168
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

error_reporting(E_ALL);
это не проверки, ни уж тем более обработка обработка ошибок.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025174
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, посмотрите добрый человек, так
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 

//if - если, "!" - оператор логического отрицания, exists - существует
if(!file_exists($file_in_archive)) {
  $rar = new ZipArchive();
//создание архива с именем ...
  $res = $rar->open($file_archiving, ZIPARCHIVE::CREATE); 
//if - если, "==" - равно, "===" - тождественно равно
  if ($res === TRUE) {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $rar->addFile($file_in_archive);
  $rar->close(); 
} else {
    echo 'failed';
}
?>


стану я кодером?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025176
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
похоже не стану: На веб-сайте произошла ошибка при получении....
подскажите пжл, где ошибся
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025179
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Уже ж говорено было: 13420857
Не читатель? ;-)
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025180
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Ошибка так же может вылезти на addFile и close.

кроме того
Код: php
1.
$res = $rar->open($file_archiving, ZIPARCHIVE::CREATE); 


это может вернуть весьма информативное описание ошибки в $res сущ. больше чем просто была ошибка или нет.

катастрофастану я кодером?

Для этого надо учиться и читать документацию. И лучше не на php.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025186
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, моя голова додумалась только до этого
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 

//if - если, "!" - оператор логического отрицания, exists - существует
if(!file_exists($file_in_archive)) {
  $rar = new ZipArchive();
//создание архива с именем ...
  $res = $rar->open($file_archiving, ZIPARCHIVE::CREATE); 
//if - если, "==" - равно, "===" - тождественно равно
if ($res === TRUE) {
  echo 'failed';
} else {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $rar->addFile($file_in_archive);
  $rar->close();
}
?>


эксперимент не удался, пхп-шники ну как надо, подскажите пожалуйста в Вашем лабиринте
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025193
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

автор
Код: php
1.
2.
3.
4.
5.
6.
7.
if ($res === TRUE) {
  echo 'failed';
} else {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $rar->addFile($file_in_archive);
  $rar->close();
}



Это что за идиотизм?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025195
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Учитесь пользоваться отладчиком.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025198
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
//если получили ошибку, тогда ...
if ($res === TRUE) {
//вывести сообщение
  echo 'failed';
//в противном случае ...
} else {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $rar->addFile($file_in_archive);
  $rar->close();
}


я так понял
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025199
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, как им без ЭФ 8 пользоваться?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025202
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Неужели так трудно в гугле набить "php xdebug" или "Отладка php" обмусолена тема по самое не могу.


катастрофая так понял

Значит отрыть документацию и читать до наступления просветления.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025211
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, ага один из советов
И САМОЕ ВАЖНОЕ: запуская скрипт, смотрите не то, что показывает браузер, а ИСХОДНЫЙ HTML код!.
мимо, потому, что там пусто, может это уже о чём то говорит?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025213
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

катастрофамимо, потому, что там пусто, может это уже о чём то говорит?

Это говорит о нежелании слушать и думать.
Я Вам уже указал несколько путей поиска проблемы, Вы не пошли ни одним из них.
Ни нормального отлова ошибок, ни попытки отладки я в Ваших ответах не увидел.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025242
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нынче сайт отображается, но файла в корне сайта нет
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 

//if - если, "!" - оператор логического отрицания, exists - существует
if(!file_exists($file_in_archive)) {
  $rar = new ZipArchive();
//создание архива с именем ...
  $res = $rar->open($file_archiving, ZIPARCHIVE::CREATE); 
//if - если, "==" - равно, "===" - тождественно равно, если получили ошибку, тогда ...
if ($res === TRUE) {
//вывести сообщение
  echo 'failed';
//в противном случае ...
} else {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $rar->addFile($file_in_archive);
  $rar->close();
}
}
?>


помогите пожалуйста
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025245
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Ну просто клиника. Читать вообще не умеем?

Коды ошибок

Возвращает TRUE при успешном завершении или код ошибки.

ZIPARCHIVE::ER_EXISTS

Файл уже существует.

ZIPARCHIVE::ER_INCONS

Несовместимый ZIP-архив.

ZIPARCHIVE::ER_INVAL

Недопустимый аргумент.

ZIPARCHIVE::ER_MEMORY

Ошибка динамического выделения памяти.

ZIPARCHIVE::ER_NOENT

Нет такого файла.

ZIPARCHIVE::ER_NOZIP

Не является ZIP-архивом.

ZIPARCHIVE::ER_OPEN

Невозможно открыть файл.

ZIPARCHIVE::ER_READ

Ошибка чтения.

ZIPARCHIVE::ER_SEEK

Ошибка поиска.


Я умываю руки.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025246
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Скажите честно, код из предыдущего поста Вы написали самостоятельно, включая комментарии или откуда-то скопипастили?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025247
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, так я то жду, что эта строка кода
echo 'failed';
выдаст ошибку на странице, но её нет
???
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025248
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

катастрофаecho 'failed';
выдаст ошибку на странице, но её нет
???

И не будет никогда! PHP как и прочие ЯП пока мысли читать не умеют, и тупо делают что им говорят...

Уже выделил строку из до-ки. Читать до потери пульса - пока не дойдёт сакральный смысл Возвращает TRUE при успешном завершении или код ошибки.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025254
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleкатастрофа,

Скажите честно, код из предыдущего поста Вы написали самостоятельно, включая комментарии или откуда-то скопипастили?
откуда же такое можно скопипастить, это же быдлокод, пхп-шники, что-то спать охота...
поправьте пжл код
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025256
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сразу скажу, что для меня тайна, что такое тождественно равно
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025259
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофаоткуда же такое можно скопипастить, это же быдлокодВы явно недооцениваете интернеты, там и не такое найти можно.

Прочтите Ваш код еще раз внимательно, он не сходится с комментариями.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025260
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Видимо автор поста всё таки читать не умеет
SergSW Возвращает TRUE при успешном завершении
уже столько раз на это ссылались, а у него упорно

Код: php
1.
2.
3.
if ($res === TRUE) {
//вывести сообщение
  echo 'failed';
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025284
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ах, если б это был единственный ляп... Оч похоже на то как в школе подгоняли решение задачи под ответ с последних страниц учебника :-)
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025288
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

А кому-то такой "код" может в наследство с проектом достаться... чур меня... чур...
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025354
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW, други, пока Вы глумились я поспал и мне приснилось
Код: php
1.
2.
3.
if ($res == TRUE) {
//вывести сообщение на странице
  echo 'failed';


получил сообщение failed, ещё посплю, вдруг приснится как дескриптион ошибки узнать
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025379
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSWvkle,

А кому-то такой "код" может в наследство с проектом достаться... чур меня... чур...

не надо боятся - сейчас\сегодня же всё уладим
и что решил изящно, сделал так в .htaccess
#требуется для записи в лог ошибок, включаем лог ошибок в PHP
php_value log_errors "on"
#ограничиваем длину файла одним мегабайтом, чтобы не загадить все место на сервере
php_value log_errors_max_len "1024"
#указываем абсолютный путь к файлу в который пишем логи ошибок
php_value error_log "error.log"

но сайт открыл и error.log пустой - невезуха или что?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025391
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин, одно из трёх
или пишут идиоты
или пишут для идиотов
или увидеть нужно в потаённом месте
сделал
Код: php
1.
2.
3.
4.
5.
if ($res == TRUE) {
  ini_set('display_errors', 1);
  error_reporting(E_ALL);
//вывести сообщение на странице
  echo 'failed';


нигде ничего не увидел... швах
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025393
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Да господи что за тупость! Надо просто включить мозги!
Код: php
1.
2.
3.
4.
5.
if($res !== TRUE){
   echo "error: $res";// тут будет код ошибки
}else{
// to do
}


Если Вы не в состоянии такой простой код написать, может совсем не стоит программированием заниматься?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025397
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ухты, спасибо, Вы там в игру не играете какой будет следующий вопрос и ставок не делаете, когда тягомотина закончится?
ну и получил: error: 19
инет молчит по поводу этой ошибки, невиданная? где есть полный список?
как же потуги уладить чтобы в error.log писали ошибки, а то что зря этот файл в корень кидал?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025401
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофану и получил: error: 19
инет молчит по поводу этой ошибкиВы просто не умеете им пользоваться. Тынц
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025402
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как я говорил водном месте пишут, что нужно добавить директиву
php_value log_errors "on"
в другом
php_value display_errors 1
кому верить?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025405
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
спасибо, я в шоколаде
#define ZIP_ER_NOZIP 19 /* N Not a zip archive */
что теперь с этим делать??
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025406
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофакому верить? Мануалу


катастрофачто теперь с этим делать??Ничего. Принять как должное.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025408
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
>Ничего. Принять как должное
лабиринт? задумка была файл в корне архивировать, так как это сделать?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025410
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам же вчера, на первой странице сказали.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025417
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
Это
>Может прав на запись не хватает, банально
что ли??
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025442
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это: 13420857
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025493
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, так подумал, а что я парюсь, копирнул
Пример #2 Создание архива
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
    $zip->addFromString('test.txt', 'file content goes here');
    $zip->addFile('data.txt', 'entryname.txt');
    $zip->close();
    echo 'ok';
} else {
    echo 'failed';
}
?>


пастонул, получил на странице ОК, и толку, как появилось ОК, когда файлов 'test.txt', 'file content goes here' в корне хоста и в помине нет
долгоиграющая пластинка...
что не так? подскажите пожалуйста
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025505
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите пожалуйста, в этой строке $zip->addFromString('test.txt', 'здесь следует содержимое файла');
что значит здесь следует содержимое файла? мне сто его в строчку записать нужно?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025508
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там все написано
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025513
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, там написано итальянцами
Пример #1 Добавить запись в новый архив
я правильно это понимаю как - добавить файл в архив, который будет создаваться программно?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025580
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно, именно в архив, а не в корень хоста, где Вы его искали тремя постами выше. Вот ведь что чтение мануалов с разумом делает!
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025585
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
>Правильно, именно в архив
и где он находится?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38025608
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
видимо мне надо по русски у Вас спросить что я хочу
на странице сайта идёт раздача документов в формате Ворд
эти файлы я вручную закидываю на хост, те кто по умнее хотели бы эти документы скачивать в заархированом виде, так вот, чтобы мне этим не парится мне можно архивацию возложить на сервер?
или это я загнул? если можно то как?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027383
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну, что апну
>или это я загнул? если можно то как?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027451
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофачтобы мне этим не парится мне можно архивацию возложить на сервер?Вот когда совсем запаритесь архивировать тысячи документов ручками - тогда и напишите скрипт. А пока рано. Сходу не пошло, так зачем мучиться?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027466
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, я ж не ищу лёгких путей, делать та по взрослому
и всё же как?
пока остановился на этом, пробую
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
    $zip->addFromString('test.txt', 'здесь следует содержимое файла');
    $zip->addFile('data.txt', 'entryname.txt');
    $zip->close();
    echo 'ok';
} else {
    echo 'failed';
}
?>

<?php 
//file archiving - файл для архивирования, в php вместо пробелов не нужно указывать "%20"
$file_archiving ='Правила дорожного движения РФ.doc'; 
//file in archive - файл в архиве, в php вместо пробелов не нужно указывать "%20"
$file_in_archive ='Правила дорожного движения РФ.7z'; 

//if - если, "!" - оператор логического отрицания, exists - существует
if(!file_exists($file_in_archive)) {
  $zip = new ZipArchive();
//создание архива с именем ...
  $res = $zip->open($file_archiving, ZIPARCHIVE::CREATE); 
//if - если, "!==" - тождественно не равно, "!=" - не равно, "==" - равно, "===" - тождественно равно
if($res !== TRUE){
//вывести сообщение на странице
//если ошибка № 19, тогда http://www.php.net/manual/ru/zip.constants.php: #define ZIP_ER_NOZIP 19 /* N Not a zip archive */
  echo "error: $res";
//в противном случае ...
} else {
//добавление файла ... в архив с именем ..., через запятую в скобках можно добавлять несколько файлов
  $zip->addFile($file_in_archive);
  $zip->close();
}
}
?>


на мой взгляд они одинаковы
ну почеку в одном случае ОК а во втором ошибка 19?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027470
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Потому что 7z это не zip. О чем Вам собственно и говорят.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027474
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,

Не заметил тут всё гораздо хуже... тут doc
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027475
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW
понял но если ОК, то где файл в корне, я его не вижу
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027481
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,


катастрофая его не вижу
Я то же не вижу полной проверки на ошибки. Ошибка ещё может быть на addFile, close.
Если open проходит, то Вам никто не обещает что ошибки дальше нет.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027484
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSWSergSW,

Не заметил тут всё гораздо хуже... тут doc

и что никак?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38027488
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

В вашем случае никак, ну никак не убедить Zip сжимать в doc
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032452
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSWкатастрофа,

Потому что 7z это не zip. О чем Вам собственно и говорят.

так что в строке
Код: php
1.
$file_in_archive ='Правила дорожного движения РФ.7z';



Код: php
1.
$file_in_archive ='Правила дорожного движения РФ.zip';



нужно?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032482
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точно, метод тыка, без какого-либо осознания. Мыслите в правильном направлении, а вот причинно-следственные связи в корне неверны.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032509
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
>причинно-следственные связи в корне неверны
какие верные? я не врублюсь я так понимаю всё зависит от возможностей хоста или как?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032532
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

1. Взять IDE нормальную не только с подсветкой синтаксиса, но и с подсветкой использования переменных.
2. Нормально прочитать свой же код. И подумать где какие переменные стоят и на своих ли местах. В вашем последнем коде как минимум 2 ошибки.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032536
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,

IDE нормальная, это какая?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032546
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

Eclipse, NetBeans, PhpStorm и т.д.

Хотя сдается мне тут не в IDE проблема.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032553
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSWтут не в IDE проблема.Ага, IDE не следят за значениями переменных в контексте приведенной проблемы :-)
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032557
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Но хоть подсвечивают, если знаешь куда смотреть - помогает.
По приведённому коду такое ощущение, что его в блокноте писали.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032558
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,

IDE нормальная, это какая?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032560
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофаSergSW,

IDE нормальная, это какая?

цикл завис?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032562
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,
конечно в блокноте
цикл завис?-что за загадки?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032564
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSWПо приведённому коду такое ощущение, что его в блокноте писали.У меня сложилось ощущение, что в мануал ни разу не заглянули за пять дней размусоливания этого топика. А раз так, то с чего бы глядеть на подсказки IDE и понимать их?

Сдается мне, катастрофа еще тот тролль.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032566
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSW,
конечно в блокноте
цикл завис?-что за загадки?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38032567
SergSW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Может стоит тему закрыть? Решение уже со всех сторон обсудили.
Продолжать уже даже не смешно.
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38033661
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри не доходит ....
можете прокементировать строку из мануала
Код: php
1.
$zip->addFromString('dir/test.txt', 'file content goes here');
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38054429
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здравствуйте, тягомотина продолжается также в связи с моей командировкой и отсутствием приемлимых условий
остановился пока на этом
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<html> 
<head> 
 <title>Архивация файла</title> 
</head> 
<body> 
<?php
$file_archiving ='Правила дорожного движения РФ.doc';
$file_in_archive ='Правила дорожного движения РФ.zip';
 if (isset($file_archiving))
 {
 $zip_archive = new ZipArchive();
  if ($zip_archive -> open(getcwd()."/$file_in_archive", ZIPARCHIVE::CREATE) == TRUE)
  {
  $zip_archive -> addFile($file_archiving, $file_archiving);
  $zip_archive -> close();
  echo "<a href='$file_in_archive'>Ссылка для загрузки архива</a>";
  }
  else echo "<div>Архив не может быть создан</div>";  
 }
else echo "
 <form method=post enctype='multipart/form-data'> 
 <div>Выберите файл: <input type=file name='file'> <input type=submit value='Отправить'> </div> 
 </form>";
?>
</body> 
</html>


имею в корне сайта файл index.php с кодом указанным в сообщении № 4
что я вижу заходя на сайт: Ссылка для загрузки архива
нажав на неё я имею
Not Found

The requested URL /Правила дорожного движения РФ.zip was not found on this server.
и файл Правила дорожного движения РФ.doc в заархивированном виде в корне сайта не появляется, а по задумке должен быть, что я делаю не так?
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38055103
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой сории
имею в корне сайта файл index.php с кодом указанным в сообщении № 4 надо читать как
имею в корне сайта файл index.php с кодом указанным в этом сообщении (сегодня, 11:34)
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38061266
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,
ну сделал так
Код: php
1.
2.
$file_archiving ='2.doc';
$file_in_archive ='2.zip';


всё работает, понятно в чём проблема, но файла 2.zip в корне сайта нет, откуда он берётся для скачки, или его не должно быть??????????
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38061285
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибочка вышла есть этот файл в корне, а так с русскими буквами на могу сделать...
$file_archiving ='ф2.doc';
$file_in_archive ='ф2.zip';
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38061314
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот я балда тотал обновлять нужно перед просмотром, осталось избавиться от ссылки такого вида: Ссылка для загрузки архива как? я менял кодировку на windows-1251
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38061491
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделать - сделал, но удовлетворения от того, чтобы было по человечески пробелы нужно заменить на _, а кириллицу латиницей в имени файла не получил, всем спасибо
...
Рейтинг: 0 / 0
[PHP] Архивирование файла
    #38061494
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
осталось одно, распаковывая файл он содержится в папке "¦С¦¬¦-¦¬¦¬¦-TВ¦¦¦¦¦-" можно это уладить, чтобы папка имела одноимённое с именем файла без его расширения имя?
...
Рейтинг: 0 / 0
79 сообщений из 79, показаны все 4 страниц
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Архивирование файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]