Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/10/2007, 19h30   #1
Nouveau Membre du Club
 
Avatar de Ministar
 
Inscription : septembre 2006
Messages : 143
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : septembre 2006
Messages : 143
Points : 25
Points : 25
Par défaut [SQL] Sauvegarde et restauration d'une partie de BDD en XML

Bonsoir à tous!
Je viens ici pour vous demander des conseils pour une méthode à suivre et pour la mettre en oeuvre!

Ce que je veux faire :
Je souhaite sauvegarder une partie de ma base de donnée.
En clair : Si un utilisateur se désinscrit de mon site je veux pouvoir sauvegarder touts les informations qui le concerne dans la base de données dans un fichier texte.
Comme ca si jamais ce n'est pas lui qui a supprimé le compte je pourrais restauré les données.

Comment je vois le principe de sauvegarde-restauration :
Sauvegarde :
- Récupération des donnés de l'utilisateur depuis les différentes tables
- Mise au format xml
- Enregistrement dans mon fichier texte.

Restauration :
- Récupération des données xml du fichier
- Mise au format sql et requêtes sur ma BDD.

Voila, cela me semble clair.
J'aimerais savoir dans un premier temps :
Comment procéder pour transformer mes informations depuis ma base de donnée au format sql? (fonctions à utiliser? méthode de conversion?)

Merci!!
Ministar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 11h55   #2
Nouveau Membre du Club
 
Avatar de Ministar
 
Inscription : septembre 2006
Messages : 143
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : septembre 2006
Messages : 143
Points : 25
Points : 25
Pour la conversion base de données mysql en xml je l'ai faite de la facon suivant :
exemple avec la table spam :

Code :
1
2
3
4
5
6
7
8
9
10
11
$sql_spam="SELECT id_spam,pseudo_liste,pseudo_spam FROM spam WHERE pseudo_liste='".$pseudosql."'";
$rep_spam=mysql_query($sql_spam) or die('erreur spam');;
$xml_spam='<!-- Table SPAM : -->';
while($tb_spam=mysql_fetch_array($rep_spam))
{
  $xml_spam=$xml_spam."\n<spam>";
  $xml_spam=$xml_spam."\n<id_spam>".$tb_spam[0]."</id_spam>";
  $xml_spam=$xml_spam."\n<pseudo_liste>".$tb_spam[1]."</pseudo_liste>";
  $xml_spam=$xml_spam."\n<pseudo_spam>".$tb_spam[2]."</pseudo_spam>";
  $xml_spam=$xml_spam."\n</spam>";
}
Bref on sélectionne les infos depuis la base de données et on les converties en xml.

J'ai cependant un problème : dans mes informations il se peut qu'il y ai des balises html qui sont donc interprété comme étant des éléments xml, comment remédier à ce problème?
Merci!
Ministar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 13h38   #3
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Citation:
Envoyé par Ministar
J'ai cependant un problème : dans mes informations il se peut qu'il y ai des balises html qui sont donc interprété comme étant des éléments xml, comment remédier à ce problème?
Par une section CDATA (<![CDATA[...]]>) ou alors en remplaçant les caractères spéciaux par l'entité correspondante sinon implémenter quelque chose qui fait un travail similaire aux fonctions de type htmlentities (qui elles sont destinées à du HTML) ?
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h19.


 
 
 
 
Partenaires

Hébergement Web