Ver Mensaje Individual
  #7 (permalink)  
Antiguo 09/01/2006, 02:08
Shockly
 
Fecha de Ingreso: agosto-2005
Mensajes: 109
Antigüedad: 18 años, 8 meses
Puntos: 0
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
 <HEAD>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Dump y Download la Base de Datos</title>
    <!-- no cache headers -->
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="no-cache">
    <meta http-equiv="Expires" content="-1">
    <meta http-equiv="Cache-Control" content="no-store">
    <meta http-equiv="Cache-Control" content="no-cache">
    <meta http-equiv="Cache-Control" content="must-revalidate">
    <!-- end no cache headers --> 
 </HEAD>
<BODY
    bgcolor="#D5D5D5" 
    text="#000000" 
    id="all" 
    leftmargin="25" 
    topmargin="25" 
    marginwidth="25" 
    marginheight="25" 
    link="#000020" 
    vlink="#000020" 
    alink="#000020">
    <center><h1>Dump y Download la Base de Datos</h1></center>
    <strong>
<?php
//---------------------------------------------------------------------------------------------------
    
define'Str_VERS'"v09/01/2006 shockly AT gmail DOT com" );
    
error_reportingE_ALL );
    @
set_time_limit);
//---------------------------------------------------------------------------------------------------


    // Mysql Database Information:
  
$db_name            "test_db";
  
$db_username        "user"
  
$db_password        "pass"

  
$backup_db_save_as  "test_base";


//---------------------------------------------------------------------------------------------------


    
function Display_dbs$nombre ) {
        
        
// read this directory 
        
$thisDir "./"
        
$cntFile 0// start file counter, names that have an extension 
        
$cntDir 0// start directory counter, names with no extension 
        
$dlist ''// build the resulting list and then echo the final results 

        
if ($dir = @opendir($thisDir)) { // open a specified directory 
            
$dlist .= "\n" "\n" '<ul>'

            while (
$file = @readdir($dir)) { // read a name from the directory 
                    
$size filesize($file);
                    if( 
$size != && !(strpos(' '.$file,'.') != && !strpos(' '.$file,'.')) ) {    //  las carpetas tienen tamaño
                 
if( substr$file0strlen($nombre) ) == $nombre ) {
                       
$dlist .= "\n" '<li><a href="' htmlentities($file) . '">'
                    
$dlist .= htmlentities($file) . '</a>'

                    
$size filesize($file);
                    
$size number_format($size0',''.');
                    
$size str_replace",",".",$size );

                                
$dlist .= "\n" '<small style="font-weight:500;">';
                    
$dlist .= "&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;&nbsp;&nbsp;$size Bytes";
                    
$dlist .= "&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;&nbsp;&nbsp;" date ("d/m/Y H:i:s"filemtime($file));          

                    
$t_file filemtime($file);
                    
$t_now time();
                    
$t_delta $t_now $t_file;
                    
$t_delta = (floor($t_delta/86400))." días, "
                    
.floor(($t_delta-(floor($t_delta/86400)*86400))/3600)." horas, "
                    
.floor(($t_delta-(floor($t_delta/3600)*3600))/60)." minutos y "
                    
.floor($t_delta-(floor($t_delta/60))*60)." segundos.";
                    
$dlist .= "&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;&nbsp;&nbsp;Esta Base de Datos es de hace $t_delta<br>";
                    
                    
$dlist .= '</small>';                    
                    
$dlist .= '</li>';         
          
                    
$cntFile += 1// increment the counter 
                  

                } 
            } 

            if (
$cntFile 1)
                
$dlist .= "\n" '<div><li><small>(No hay, primero Salva la Base de Datos)</small></div>'
            
$dlist .= "\n" '</ul>'
            
closedir($dir); // close the directory 
        
}
        else
            
$dlist .= "\n" '<p>(Could not read the directory, or the directory does not exist.)</p>'

        echo 
'<p>';

        if (
$cntFile+$cntDir 0) { // items found, any file or directory 
            
if ($cntFile && $cntDir 0) { // files and directories found 
                
echo ', '
            } 
        }
        echo 
$dlist;
    }


//---------------------------------------------------------------------------------------------------


    
$error false;
    
$message "\n";

    
$backup_db_as $backup_db_save_as;
    
$backup_db_as .= ".gz";
    
$backupcommand "mysqldump --add-drop-table --add-locks -u$db_username -p$db_password $db_name | gzip > $backup_db_as";
    
// primero la borra
    
@unlink$backup_db_as );
    
$t_start time();
    
// backup
    
passthru"$backupcommand"$error );
    if( 
$error ) {
        
$message .= "\n";
        
$message .= "- Problema en passthru. Error = $error\n";
        
$message .= "\n";    
    }
    else {
        
$t_delta_bk time() - $t_start;
        
$t_delta_bk = (floor(($t_delta_bk-(floor($t_delta_bk/86400)*86400))/3600)." horas, "
        
.floor(($t_delta_bk-(floor($t_delta_bk/3600)*3600))/60)." minutos y "
        
.floor($t_delta_bk-(floor($t_delta_bk/60))*60)." segundos.");
        
$size filesize$backup_db_as );
        
$size number_format($size0',''.');
        
$message .= "\n";
        
$message .= "- Base de Datos salvada: '" $backup_db_as "'\n";
        
$message .= "- Tamaño: " $size " bytes.\n";
        
$message .= "- Tardó en salvarse: " $t_delta_bk "\n";
    }

    echo( 
"<br>" );
    
$message preg_replace"/\n/""<br>"$message );
    echo 
$message;
    echo( 
"<br><br>- Bases de Datos disponibles:<br></strong>" );
    
Display_dbs$backup_db_save_as );
    echo( 
"<br><hr><center><small>" );
    
setlocaleLC_TIME,"spanish" );
    echo 
strftime"%A %d %B %Y&nbsp;-&nbsp;%H:%M:%S"time() );
    echo( 
"<br>" Str_VERS );
    echo( 
"</small></center><br>" );
    echo( 
"</BODY>" );
    echo( 
"</HTML>" );
    exit;
    
    
//---------------------------------------------------------------------------------------------------
?>