sims 0 Denunciar post Postado Setembro 30, 2006 Olá a todos,sou novato em php e estou tentando fazer a descompactação de arquivos por php.utilizo o seguinte codigo postado pelo nosso amigo fabyo aqui do forum.<? unzip("D:\Projetos\sistemas teste\zip\nada.zip");// aqui eu coloquei ja o caminho completo e so o relativo mas sempre sa erro.function unzip($file) { if(pathinfo($file, PATHINFO_EXTENSION) != "zip") { return false; } if ($zip = zip_open(getcwd(). "\\".$file)) { if(!file_exists($basename=basename($file, ".zip"))) { mkdir($basename); } while ($zip_entry = zip_read($zip)) { if (zip_entry_open($zip, $zip_entry, "r")) { $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); $dir_name = $basename."\\".zip_entry_name($zip_entry); $isdir = !$buf; if ($isdir) { mkdir($dir_name); continue; } else if (file_exists($dir_name)) unlink ($dir_name); $fp = fopen($dir_name, "w"); fwrite($fp, $buf); zip_entry_close($zip_entry); } else return false; } zip_close($zip); } else return false;}//modo de usar:?>me da o seguinte erro:Fatal error: Call to undefined function: zip_open() in D:\Projetos\sistemas teste\zip\zip.php on line 7o que será??me ajudem por favor.estou usando o php 4.02se nao me engano em winxp.obrigado.Rogerio Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Setembro 30, 2006 você precisa da biblioteca ZZIPlib para poder usar essas funções http://www.php.net/zip Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Setembro 30, 2006 Desculpa ai adailton.magicaltrevor eu ate baixei essa bibilhoteca masn consegui instalar como faço voce pode me ajudar??tenho q decomentar algo no php.ini ja descomentei o php_zip mas n deu nada.Obrigado, Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Outubro 3, 2006 Ja reiniciel sim, umas 10x ou mais.mas sempre da esse erro. Warning: zip_open() Cannot open zip archive nada.zip in D:\Projetos\sistemas teste\zip\unzip php\unzip.php on line 3Eu olhei na pasta extensions do php e tem o php_zip.dll ja descomentei e nada.baixei o pacote ZZIPlib mas n sei instalar sera q alguem pode me ajudar???Win Xp sp2 IIS 5 Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Outubro 3, 2006 a ZZIPlib é a mesma que você tem no seu PHP, soh precisa descomentar o php_zip.dllverifique se o caminho para o arquivo está certo..se nao funcionar posta o script Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Outubro 5, 2006 Olá a todos,Ate o momento nada de funcionar ja testei de todas as formas possiveis e imaginaveis, e nao deu.ta aqui o codigo se alguem puder ajudar.erro.Warning: zip_open() Cannot open zip archive ./zip/nada.zip in D:\Projetos\sistemas teste\zip\unzip php\zip.php on line 21 <?php2 $zip = zip_open("/zip/nada.zip");3 if ($zip) {4 while ($zip_entry = zip_read($zip)) {5 echo "Name: " . zip_entry_name($zip_entry) . "\n";6 echo "Actual Filesize: " . zip_entry_filesize($zip_entry) . "\n";7 echo "Compressed Size: " . zip_entry_compressedsize($zip_entry) . "\n";8 echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "\n";9 if (zip_entry_open($zip, $zip_entry, "r")) {10 echo "File Contents:\n";11 $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));12 echo "$buf\n";13 zip_entry_close($zip_entry);14 }15 echo "\n";16 }17 zip_close($zip);18 }19 ?>o meu site ta com esta estrutura:unzip php/ zip.php zip/ nada.zipObrigado pela ajuda.rogerio Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Outubro 5, 2006 pelo q eu entendi você tem um assim: pasta "unzip php" e dentro dela zip.php pasta "zip" e dentro dela nada.zip 1 <?php2 $zip = zip_open("../zip/nada.zip");3 if ($zip) {4 while ($zip_entry = zip_read($zip)) {5 echo "Name: " . zip_entry_name($zip_entry) . "\n";6 echo "Actual Filesize: " . zip_entry_filesize($zip_entry) . "\n";7 echo "Compressed Size: " . zip_entry_compressedsize($zip_entry) . "\n";8 echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "\n";9 if (zip_entry_open($zip, $zip_entry, "r")) {10 echo "File Contents:\n";11 $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));12 echo "$buf\n";13 zip_entry_close($zip_entry);14 }15 echo "\n";16 }17 zip_close($zip);18 }19 ?> axo que faltou o ".." antes de "/zip/nada.zip", para fazer voltar uma pasta Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Outubro 6, 2006 Olá MagicalTrevor,Não deu certo ainda.mudei como voce disse mas deu o mesmo erro.ja tentei outros scripts mais simples mas da sempre esse erro.ja olhei no phpinfo e ta tudo habilitado. ta dificil de fazer isso funcionar viu.vou continuar tentando achar a solução.conto com sua ajuda.obrigado,Rogerio Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Outubro 6, 2006 bom, nao sei oq pode ser, vou tentar aqui, para ver se funciona Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Outubro 6, 2006 caro amigo tm ferreira.ja fiz isso e mesmo assim da o erro.<?php2 $zip = zip_open("nada.zip");ja estou quase desistindo disso.obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
MagicalTrevor 0 Denunciar post Postado Outubro 6, 2006 tentei aqui e nao funcionou soh funcionou quando coloquei o caminho completo para o arquivo exemplo: $zip = zip_open("C:\Arquivos de programas\Apache\www\Comcasa\www\arquivo.zip"); Compartilhar este post Link para o post Compartilhar em outros sites
sims 0 Denunciar post Postado Outubro 24, 2006 Caro magical trevor.Deu certo agora, pelo menos me parece neh.tive q parar de mexer com essa coisa, pois minha placa mae do outro pc queimou.assim q arrumar verifico se deu cewrtinho.Muito obrigado pela ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
Anderson de Souza 0 Denunciar post Postado Março 11, 2011 O meu tbm só lê se for o caminho intereiro, será que teria como alterar para ler na pasta mesmo, sem ficar colocando todo o caminho??? Compartilhar este post Link para o post Compartilhar em outros sites