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


  sitEngine :: 1port.php

Code permettant d'importer le contenu d'une base de donnée mysql, sauvegarder dans un fichier sql classique.

<?php 
// 5D - lausanne - 30.10.2007
// Auteur 5D, Volpi-Bugnon Françoise
// code Volpi-Bugnon Françoise
// création d'une base de données à partir d'une sauvegarde en fichier texte
 
// Initialisation des variables par défaut 
define('FILE_APPEND'1);
//variables pour la connection à la bd
$host 'localhost';
$user 'root';
$pass '';
$base '';
// Ouverture du répertoire
$repertoire=opendir('.');
// boucle pour lecture du répertoire
while ($fichier readdir($repertoire)){
    
//si le fichier n'est pas un répertoire 
    
if (!is_dir($fichier)){
        
// preg_mach va chercher la variable en l'occurence $base ou le nom ou la chaîne de caractères située dans la variable $fichier
        
if (preg_match("/$base-/",$fichier)) $dernierfichier=$fichier;
    }
}
closedir($repertoire);
// Ouverture du fichier et récupération du contenu dans une variable
$contenufichiersauvegarde fread(fopen($dernierfichier"r"), filesize($dernierfichier));
// Connection Base de donnée
mysql_connect($host$user$pass);
mysql_select_db($base);
// efface la totalité de la base de donnée
$res mysql_query("DROP DATABASE $base");
//crée la base de donnée (nom de la base)
$res mysql_query("CREATE DATABASE $base");
//sélectionne la base de donnée
mysql_select_db($base);
//explode: divise en tableau, choix: après le ;
$sqlTableau=explode(";"trim($contenufichiersauvegarde));
//$i=0: valeur initiale
//tant que $i est plus petit que le décompte (variable) il continue $i++: +1
for ($i=0;$i<count($sqlTableau);$i++) {
//requête pour restituer les tables et leurs contenus dans la base de donnée
    
$res mysql_query($sqlTableau[$i]);
    echo 
mysql_error().'<hr>';
}
?>  
1