index       article       [code]       qcm       citation       glossary public.pub.graz.network
  droit       JS       meteo       nivologie       NTIC       orientation       SUBCATEGORY        


  sitengine:: xport.php

exporte la table de contenu de l'application sitengine.

<? include ('mySitengine.lib.php');authentificationControler();

// Initialisation des variables par défaut 
//define('FILE_APPEND', 1);
$fichier= './'.$SE['SQLTable']."-".date("Ymd-Hi").".sql";
//requête pour générer la structure SQL de la table         
$resultat = mysql_query("SHOW CREATE TABLE ".$SE['SQLTable']);
if (
$resultat){
    
$insertionSQL = "";
    
$tableau = mysql_fetch_array($resultat);
    
$tableau[1] .= ";";
    
//décharge du contenu
    
$contenuSQL[] = str_replace("n", "", $tableau[1]);
    
//requête pour récupérer le contenu de la table
    
$contenu_table = mysql_query("SELECT * FROM ".$SE['SQLTable']);
    
//recherche le nombre de champs de la table
    
$nbr_champs = mysql_num_fields($contenu_table);
    
// boucle sur chaque enregistrement contenu dans la table
    
while ($enregistrements = mysql_fetch_array($contenu_table)){
        
// insère le début de la sauvegarde SQL
        
$insertionSQL .= "INSERT INTO ".$SE['SQLTable']." VALUES(";
        
// Boucle sur chaque champ
        
for ($i=0; $i<=$nbr_champs-1; $i++) {
            
$insertionSQL .= "'" . mysql_real_escape_string($enregistrements[$i]) . "', ";
        }
        
// supprime les deux derniers caractères
        
$insertionSQL = substr($insertionSQL, 0, -2);
        
// insère la fin de commande SQL
        
$insertionSQL .= ");n";
    }
    
// ajoute le résultat dans le tableau final
    
if ($insertionSQL != "") $contenuSQL[] = $insertionSQL;
}

// retourne la structure SQL et le contenu de la base de données en chaîne de caractères 
$sauvegardeSQL = implode("r", $contenuSQL);
// inscription du contenu de la sauvegarde dans un fichier
$flag = false;
$mode = ($flag == FILE_APPEND || strtoupper($flag) == 'FILE_APPEND') ? 'a' : 'w';
// création du fichier(fileHandle)
$fhandle = @fopen($fichier, $mode);
if (
$fhandle === false) {
    echo 
"Erreur dans l'écriture du fichier ". $fichier ;
} else {
    
// inscription du contenu de la sauvegarde dans le fichier
    
$bytes_written = fwrite($fhandle, $sauvegardeSQL);
    
// fermeture du fichier
    
fclose($fhandle);
    echo 
"Base de données sauvegardée dans le fichier : " . $fichier . " - ".$bytes_written ." bytes écrit";
}
?>
1