Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/07/2011, 22:32
xaviarg
 
Fecha de Ingreso: mayo-2010
Mensajes: 102
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: No puedo comprimir en ZIP un Backup

¿¿ Tengo que utilizar la función "addFile" ??

He encontrado este ejemplo:

Código PHP:
<?php
$zip 
= new ZipArchive;
if (
$zip->open('test.zip') === TRUE) {
    
$zip->addFile('/path/to/index.txt''newname.txt');
    
$zip->close();
    echo 
'ok';
} else {
    echo 
'failed';
}
?>
y lo he modificado asi:

Código PHP:
Ver original
  1. <?php
  2. include('conect.php');
  3.  
  4. function datadump ($table) {
  5.     $result .= "# Tabla ".$table." \n";
  6.     $result .= "# Fecha: " . date("d-M-Y") ."\n\n";
  7.     $query = mysql_query("select * from ".$table);
  8.     $num_fields = @mysql_num_fields($query);
  9.     $numrow = mysql_num_rows($query);
  10.     while($row=mysql_fetch_array($query)) {
  11.   $result .= "INSERT INTO ".$table." VALUES(";
  12.     for($j=0; $j<$num_fields; $j++) {
  13.     $row[$j] = addslashes($row[$j]);
  14.     $row[$j] = ereg_replace("\n","\\n",$row[$j]);
  15.     if (isset($row[$j])) $result .= "\"$row[$j]\"" ; else $result .= "\"\"";
  16.     if ($j<($num_fields-1)) $result .= ",";
  17.    }    
  18.       $result .= ");\n";
  19.      }
  20.      return $result . "\n\n\n";
  21.   }
  22.  $qry2=mysql_list_tables($db);
  23.  $tot_tablas=mysql_num_rows($qry2);
  24.  for($i=0;$i<$tot_tablas;$i++){
  25.  $nombre_tabla=mysql_tablename($qry2,$i);
  26.  $content.=datadump($nombre_tabla);
  27.  }  
  28. $file_name = "Backup (".date('Y-m-d').").sql";
  29.  
  30.  
  31. $zip = new ZipArchive;
  32. if ($zip->open('Backup ('.date('Y-m-d').').zip') === TRUE) {
  33.     $zip->addFile(''.$file_name.'', ''.$file_name.'');
  34.     $zip->close();
  35.     echo 'ok';
  36. } else {
  37.     echo 'failed';
  38. }
  39.  
  40. echo $content;  
  41.  
  42. mysql_close($link);
  43. ?>

¿Me aproximo? No entiendo mucho...