Распаковка zip архива на хосте не имея панели

acid

Проверенные
Сообщения
18
Реакции
21
Баллы
300
Здравствуйте, имею хост но не имею панельки для быстрой распаковки файлов на сервере, а грузить уже разархивированные файлы на ftp ващпе не комильфо. Подскажите, может имеется какой нибудь лёгкий скрипт распаковщика или что то вроде того?
 
Ветка какая? И с таким вопросом логичнее в запросы дополнений
 
nictic123, это вообще к движку не относится -_-
acid, пиши хостеру с таким вопросом.
Как раз относится. Для первой ветки есть дополнение и там не xml файл можно выбрать, а сразу архив и он все сам по папкам раскидает и достанет xml а потом сам начнет установку
 
nictic123, я думаю тут вопрос по распаковке из архива самого движка.
acid, что вам конкретно нужно?:)
 
@acid, пиши хостеру с таким вопросом.
Без вариантов. Панельки нет и не будет. Поэтому я спрашиваю про сторонние скрипты.
Как раз относится. Для первой ветки есть дополнение и там не xml файл можно выбрать, а сразу архив и он все сам по папкам раскидает и достанет xml а потом сам начнет установку
Не относится.
что вам конкретно нужно?
Подскажите, может имеется какой нибудь лёгкий скрипт распаковщика или что то вроде того?
 
Если хостинг предоставляет SSH - можно воспользоваться командой unzip.
Только пакет, содержащий её, в системе может быть не установлен. Это надо учитывать.
 
Если хостинг предоставляет SSH - можно воспользоваться командой unzip.
Только пакет, содержащий её, в системе может быть не установлен. Это надо учитывать.
Не предоставляет.
На руках онли ftp
 
acid, а расширение ZipArchive установлено? Залейте этот скрипт и скиньте, что он выведет:
PHP:
<?= class_exists('ZipArchive') ? 'Installed' : 'Not installed' ?>
 
может имеется какой нибудь лёгкий скрипт распаковщика или что то вроде того?
Есть, где-то в менеджере ресурсов (?) пробегал, как раз под распаковку.
 
acid,
PHP:
<?php
// Пропишите здесь пути к архиву, и куда распаковывать
$archive = '';
$unpack  = '';

// Всё, дальше ничего не трогаем.
function out($text, $newline = true) {
  echo($text);

  if ($newline) 
    echo("\n");
}

@header('Content-Type: text/plain; charset=UTF8');
out('Открываем архив...');

$zip = new \ZipArchive();
$result = @$zip->open($archive);

if ($result !== TRUE) {
  out('Не удаётся открыть архив: ', false);
  switch ($result) {
    case \ZipArchive::ER_INCONS:
      out('Несовместимый тип файла');
      break;
    case \ZipArchive::ER_MEMORY:
      out('Ошибка динамического выделения памяти');
      break;
    case \ZipArchive::ER_NOENT:
      out('Файл-архив не найден');
      break;
    case \ZipArchive::ER_NOZIP:
      out('Файл не является архивом');
      break;
    case \ZipArchive::ER_OPEN:
      out('Невозможно открыть файл');
      break;
    case \ZipArchive::ER_READ:
      out('Ошибка чтения');
      break;
    case \ZipArchive::ER_SEEK:
      out('Ошибка поиска смещения старта');
      break;
  }

  exit();
}

out('Проверяем права на папку, куда надо распаковать... ', false);
$tmp = rtrim($unpack, '/\\');
if (!is_writable($tmp)) {
  out('Нет прав!');
  exit();
}

out('ОК');

// Распаковываем...
out('Начинаем распаковку...');
if ($zip->extractTo($unpack)) {
  out('Распаковка завершена.');
} else {
  out('Не удаётся распаковать архив по неизвестным причинам.');
}
У себя им только что для теста распаковал скачанный здесь архив с XF 2.0.9.
Распаковался нормально.
 
CrazyHackGUT, загрузи как отдельный ресурс, полезно будет :)
 
acid,
PHP:
<?php
// Пропишите здесь пути к архиву, и куда распаковывать
$archive = '';
$unpack  = '';

// Всё, дальше ничего не трогаем.
function out($text, $newline = true) {
  echo($text);

  if ($newline)
    echo("\n");
}

@header('Content-Type: text/plain; charset=UTF8');
out('Открываем архив...');

$zip = new \ZipArchive();
$result = @$zip->open($archive);

if ($result !== TRUE) {
  out('Не удаётся открыть архив: ', false);
  switch ($result) {
    case \ZipArchive::ER_INCONS:
      out('Несовместимый тип файла');
      break;
    case \ZipArchive::ER_MEMORY:
      out('Ошибка динамического выделения памяти');
      break;
    case \ZipArchive::ER_NOENT:
      out('Файл-архив не найден');
      break;
    case \ZipArchive::ER_NOZIP:
      out('Файл не является архивом');
      break;
    case \ZipArchive::ER_OPEN:
      out('Невозможно открыть файл');
      break;
    case \ZipArchive::ER_READ:
      out('Ошибка чтения');
      break;
    case \ZipArchive::ER_SEEK:
      out('Ошибка поиска смещения старта');
      break;
  }

  exit();
}

out('Проверяем права на папку, куда надо распаковать... ', false);
$tmp = rtrim($unpack, '/\\');
if (!is_writable($tmp)) {
  out('Нет прав!');
  exit();
}

out('ОК');

// Распаковываем...
out('Начинаем распаковку...');
if ($zip->extractTo($unpack)) {
  out('Распаковка завершена.');
} else {
  out('Не удаётся распаковать архив по неизвестным причинам.');
}
У себя им только что для теста распаковал скачанный здесь архив с XF 2.0.9.
Распаковался нормально.
Жирнейшее СПАСИБО!
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу