Foros del Web » Programando para Internet » PHP »

Crear archivo zip y descargarlo

Estas en el tema de Crear archivo zip y descargarlo en el foro de PHP en Foros del Web. Hola a todos Tengo el siguietne problema Necesito crear varios archivos .txt de forma automática, y para descargarlos, me gustaría que también de forma automática ...
  #1 (permalink)  
Antiguo 21/02/2011, 16:12
 
Fecha de Ingreso: mayo-2008
Mensajes: 156
Antigüedad: 16 años, 5 meses
Puntos: 0
Crear archivo zip y descargarlo

Hola a todos

Tengo el siguietne problema

Necesito crear varios archivos .txt de forma automática, y para descargarlos, me gustaría que también de forma automática se comprimieran y una vez comprimidos se eliminara del servidor el archivo zip (esto último me es indiferente, si tengo que borrar yo el archivo zip no importa)

He leido sobre pclZip, pero después de probarlo, no me funciona. El manual está en ingles y de ingles la verdad que poquito. No se si habrá algún método más fácil o algún manual en Español para "lentos" como yo jeje, por eso pido vuestra ayuda, me gustaría haber si dais alguna idea de como poder hacerlo

Gracias!
  #2 (permalink)  
Antiguo 21/02/2011, 16:24
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Crear archivo zip y descargarlo

manejo de zip -> http://php.net/manual/es/book.zip.php
manejo de archivos -> http://mx2.php.net/manual/es/ref.filesystem.php

ahi esta todo el trabajo hecho. :)
  #3 (permalink)  
Antiguo 23/02/2011, 16:29
 
Fecha de Ingreso: mayo-2008
Mensajes: 156
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Crear archivo zip y descargarlo

gracias!
le voy a echar un vistazo y pregunto dudas!
  #4 (permalink)  
Antiguo 27/02/2011, 09:17
 
Fecha de Ingreso: mayo-2008
Mensajes: 156
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Crear archivo zip y descargarlo

He estado probando con zlib y al comprimir lo comprime bien con este script:

Código PHP:
Ver original
  1. <?php
  2.  
  3. function descomprimir($origen, $destino) {
  4. $string = implode("", gzfile($origen));
  5.  $fp = fopen($destino, "w");
  6. fwrite($fp, $string, strlen($string));
  7. fclose($fp);
  8. }
  9.  
  10. function comprimir($origen, $destino) {
  11.   $fp = fopen($origen, "r");
  12.   $data = fread ($fp, filesize($origen));
  13.   fclose($fp);
  14.   $zp = gzopen($destino, "w9");
  15.   gzwrite($zp, $data);
  16.   gzclose($zp);
  17. }
  18.  
  19. function comprimir_zip($origen, $destino){
  20. $zip = new ZipArchive();
  21. if ($zip->open($destino, ZIPARCHIVE::CREATE)!==TRUE) {
  22. die("Error al crear el archivo");
  23. }
  24. $zip->addFile($origen, "/".basename($origen));
  25. $zip->close();
  26. }
  27.  
  28. comprimir_zip("perfil.php","archivo2.zip");
  29.  
  30. ?>

Pero a la hora de descomprimirlo me da error CRC, es decir que el archivo está corrupto.

Estos ejemplos los he visto en varios sitios pero.......... en ninguno dan ninguna expliación más. He visto el manual de arriba a bajo, pero yo seré muy corto de mente o algo porque no entiendo como poder arreglarlo

En mi php.ini están habilitadas estas dos líneas:
extension=php_zip.dll
extension=php_zlib_filter.dll

Alguien sabe como ayudarme?? gracias

Etiquetas: zip
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:17.