Restauration de la base de données
Bonjour !!
J'essais de faire une partie restauration de la base de données dans un site web et pour cela, je supprime toutes les base de données existantes, ensuite je récupère un fichier sql qui contient mes requêtes et je l'exécute grâce à ce script trouvé sur ce même forum (je ne sais plus trop ou...).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
//Connexion à la base de données
$connexion = mysql_connect($_POST['new_hote'], $_POST['new_login'], $_POST['new_password']);
mysql_select_db($_POST['new_base'], $connexion);
$requetes="";
$sql=file("../temp/".$fichier_sql); // on charge le fichier SQL
foreach($sql as $l)
{ // on le lit
if (substr(trim($l),0,2)!="--"){ // suppression des commentaires
$requetes .= $l;
}
}
$reqs = split(";",$requetes);// on sépare les requêtes
foreach($reqs as $req){ // et on les éxécute
if (!mysql_query($req,$connexion) && trim($req)!=""){
die("ERROR : ".$req); // stop si erreur
}
} |
Malheureusement, il sépare chaque requête à l'aide du ; et il se peut que dans INSERT INTO on retrouve des valeurs comme é. Ca ne fonctionne alors plus du tout.
Je ne sais pas comment me sortir de ce problème....