<?php
 
/*
 
*
 
* Title: Compare two MySql backups and output changes in third file
 
* Author: Obaidullah Khan
 
* E-Mail: [email protected]
 
* Licence: GNU GPL
 
* Version: 0.1
 
* Script can take two backups and compare both for changes if there is any changes, script output changes third file and save in harddrive
 
* to take first backup use follwoing parameter with example file
 
* ?step=1
 
* to take second backup use following parameter using example file
 
* ?step=2
 
* to compare both backups use following parameter using example file
 
* ?step=final
 
*
 
*/
 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 
<title>Untitled Document</title>
 
</head>
 
<?php
 
    require_once('base.class.php');
 
    
 
    if(isset($_REQUEST['Submit']))
 
    {
 
    
 
    }
 
        
 
    function GetLastFileName()
 
    {
 
        $FileName = '0'; 
 
         $default_dir = "./"; 
 
        // lists files only for the directory which this script is run from
 
        
 
        if(!($dp = opendir($default_dir))) die("Cannot open $default_dir.");
 
        
 
        while($file = readdir($dp)) 
 
        {
 
            if(is_dir($file)) 
 
            {
 
                continue;
 
            }
 
            else if($file != '.' && $file != '..') 
 
            {
 
               $FileNameArr = explode(".",$file);
 
                if($FileNameArr[1] == 'sql')
 
                {
 
                    if($FileName == '')
 
                    {
 
                        $FileName = $FileNameArr[0];
 
                    }
 
                    else
 
                    {
 
                       if($FileName < $FileNameArr[0]) 
 
                       {
 
                           $FileName = $FileNameArr[0];
 
                       }
 
                    }
 
                    
 
                }
 
                
 
            }
 
        }
 
        closedir($dp);
 
        
 
        return $FileName+1;
 
    }
 
 
?>
 
<body>
 
 
<?php
 
    if(isset($_REQUEST['step']) && $_REQUEST['step'] == 1)
 
    {
 
    
 
        include 'mysql_backup.class.php';
 
            
 
        $db_host = "localhost";    //---- Database host(usually localhost).
 
        $db_name = "flavio";    //---- Your database name.
 
        $db_user = "root";    //---- Your database username.
 
        $db_pass = "";    //---- Your database password.                                         
 
        
 
        $output = "firstbackup.sql";
 
        $structure_only = false;
 
                                 
 
        $backup = new mysql_backup ($db_host,$db_name,$db_user,$db_pass,$output,$structure_only);    
 
                                 
 
        $backup->backup();
 
        
 
    
 
    }                               
 
    else if($_REQUEST['step'] == '2')
 
    {
 
            
 
        include 'mysql_backup.class.php';
 
            
 
        $db_host = "localhost";    //---- Database host(usually localhost).
 
        $db_name = "flavio";    //---- Your database name.
 
        $db_user = "root";    //---- Your database username.
 
        $db_pass = "";    //---- Your database password.                                         
 
        
 
        $output = 'secondbackup.sql';                                                                  
 
        $structure_only = false;
 
                                 
 
        $backup = new mysql_backup ($db_host,$db_name,$db_user,$db_pass,$output,$structure_only);    
 
                                 
 
        $backup->backup();
 
            
 
    }
 
    else if($_REQUEST['step'] == 'final')
 
    {
 
      
 
            echo'inside';
 
                $obj = new Compare();
 
                $obj -> File1 = 'secondbackup.sql';
 
                $obj -> File2 = 'firstbackup.sql';
 
                $obj -> ProcessFile();
 
 
 
    }
 
    else
 
    {
 
?>
 
Usage:
 
<p>
 
<b>Create First Backup: ?step=1</b>
 
<br>      
 
<b>Create Second Backup: ?step=2</b>
 
<br>
 
<b>Compare Backups: ?step=final</b>
 
</p>
 
<?php
 
    }
 
?>
 
</body>
 
</html>
 
              
 
 |