<?php

// ------------------------------------------------------------------------- //
// Sauvegarder une base MySQL au format texte                                //
// ------------------------------------------------------------------------- //
// Auteur: Laurent Rougier                                                   //
// Email:  rlaurent@lokris.com                                               //
// Web:    http://www.lokris.com/                                            //
// ------------------------------------------------------------------------- //

function recbase($table)
{
    
$file = fopen("./sauvegarde/$table.txt", "w");

    if (!
$file)
    {
        echo
"<p>Impossible d'ouvrir un fichier distant en écriture.\n";exit;}
        
$req = mysql_db_query("MABASE","select * from `$table`");
        
$ligne1=true;
        while(
$row = mysql_fetch_array($req))
        {
        if (
$ligne1)
        {
            for(
$j=0;$test=each($row);$j++)
            {
                if(
$j%2) fwrite($file,"\"$test[0]\";");
            }
            
$ligne1=false;
        }
        else
            for(
$j=0;$test=each($row);$j++)
            {
                
$champ=trim(str_replace("\n","",$test[1]));
                if(
$j%2) fwrite($file,"\"$champ\";");
            }
            
fwrite($file,"|\r");
    }
    
fclose($file);
    
mysql_free_result($req);
    return
"Sauvegarde de la base : $table<br>";
}

$link = mysql_connect("localhost", "root", "password");

$list_tables = mysql_list_tables ("MABASE");
$i=0;
while (
$i<mysql_num_rows($list_tables))
{
    
$tb_names[$i] = mysql_tablename($list_tables,$i);
    
recbase($tb_names[$i]);
    
$i++;
}

mysql_close($link);

?>