Pergunta

Eu tenho um tutorial de um site Tuts líquidas que é usado para fazer upload de um arquivo zip e extrair os dados dentro do arquivo para o servidor.

Copiar e colar o código diretamente a partir da página web não trabalho, um erro ocorreu a meio do script que está sendo processado.

Fatal error: Cannot instantiate non-existent class: ziparchive in /www/website_here.co.uk/httpdocs/test/functions.php on line 6

É possível que isso tem a ver com a versão do PHP Eu estou usando? Aqui está o código ele fica preso em:

<?php

function openZip($file_to_open) {
    global $target;
    global $unique_folder;
    $zip = new ZipArchive();
        $x = $zip->open($file_to_open);
        if ($x === true) {
            $zip->extractTo($target . $unique_folder);
            $zip->close();

            unlink($file_to_open); #deletes the zip file. We no longer need it.
        } else {
            die("There was a problem. Please try again!");
        }
    }

?>

linha 6: $ zip = new ZipArchive ();

Eu estou usando PHP versão 4.3.9.

Foi útil?

Solução

No PHP 4 é absolutamente necessário para instalar PECL zip 1.1.0 (ou mais recente) a fim de ter acesso à classe ZipArchive. Siga estas instruções .

Se isso não for possível, você terá que usar o zip_open não-OO, zip_read etc. API.

Outras dicas

Você pode usar PclZip demasiado:

include('pclzip.lib.php');
$zip = new PclZip($file_to_open);
if ($zip->extract(PCLZIP_OPT_PATH, $target . $unique_folder) == 0) {
    die("There was a problem. Please try again!");
} else {
    unlink($file_to_open);
}

http://www.phpconcept.net/pclzip

include('pclzip.lib.php');
$zip = new PclZip($file_to_open);
if ($zip->extract(PCLZIP_OPT_PATH, $target . $un_f) == 0) {
    close("close");
} else {
    unlink($file_op);
}

eu concordo uso PclZip e se você não tem tempo para o código-lo uso extrair dados u também precisa utilizar bibliotecas de referência

Você precisa de uma referência para a biblioteca que contém a classe ZipArchive

$zipn=$_REQUEST['zip'];
echo $zipn;

$zip = new ZipArchive;
echo $_SERVER['DOCUMENT_ROOT']."/";
if ($zip->open($zipn) === TRUE) {
  $zip->extractTo($_SERVER['DOCUMENT_ROOT']."/");
  $zip->close();
  echo 'ok';
} else {
  echo 'failed';
}

---------- Susheel susheel1104@gmail.com

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top