<?php
function backupDatabase() {
    $query = array();

    $query[] = '#####################################';
    $query[] = '#      DATABASE BACKUP by Murfy     #';
    $query[] = '#                                   #';
    $query[] = '# Backup datum: '.date('d-m-Y H:i:s').' #';
    $query[] = '#####################################';
    
    // Tabelnamen zoeken
    $qTables = mysql_query("SHOW TABLE STATUS") or die(mysql_error());  
    while($aTables = mysql_fetch_assoc($qTables)) {
        // De create-table query maken
        $query[] = "\n\n".'#############'.str_repeat('#',strlen($aTables['Name'])).'##';
        $query[] = '# Tabelnaam: '.$aTables['Name'].' #';
        $query[] = '#############'.str_repeat('#',strlen($aTables['Name'])).'##';
        
        $qCreate = mysql_query("SHOW CREATE TABLE ".$aTables['Name']);
        $aCreate = mysql_fetch_assoc($qCreate);
        $query[] = $aCreate['Create Table'].';';
        
        $query[] = "\n".'# Data invoeren '."\n";
        
        $qData   = mysql_query("SELECT * FROM ".$aTables['Name']);
        while($aData = mysql_fetch_assoc($qData)) {
            foreach($aData as $key => $value) {
                // Indien het een nummer is horen daar quotes rond, alsook wat veiligheid
                $aData[$key] = mysql_real_escape_string($value);            
            }
            
            $query[] = "INSERT INTO `".$aTables['Name']."` "
                     . "(`".implode('`, `', array_keys($aData))."`) VALUES "
                     . "('".implode("', '", $aData)."');";
        }
        
    }
    
    // Alles aan elkaar zetten met returns ertussen
    $query = implode("\n", $query);
    return $query;
    
}
?>