EXPORTATION IMPORTATION DE BDD RESPECTANT LES RELATIONS ENTRE TABLES

Messages postés
291
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
13 mars 2015
- - Dernière réponse : mitch73
Messages postés
3
Date d'inscription
lundi 24 septembre 2007
Statut
Membre
Dernière intervention
29 avril 2009
- 15 avril 2009 à 06:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/41692-exportation-importation-de-bdd-respectant-les-relations-entre-tables

mitch73
Messages postés
3
Date d'inscription
lundi 24 septembre 2007
Statut
Membre
Dernière intervention
29 avril 2009
-
Merci pour ton aide :D

je vais tester ça

je t'ai déjà mis une bonne note pour ton code ;)
c'est la moindre des choses
pifou25
Messages postés
150
Date d'inscription
lundi 13 octobre 2003
Statut
Membre
Dernière intervention
21 décembre 2014
-
normal, dans ta boucle la variable $_xml est écrasée à chaque nouvelle valeur de la base ( = enregistrement = ligne de ta table). utilise .= au lieu de = :
$_xml .= "blabla";

sinon, ici c'est les commentaires pour mon code :p les demandes d'aide pour un pb qu'a rien à voir, c'est sur les forums du site :D pour la peine tu peux au moins me mettre une bonne note ;)
mitch73
Messages postés
3
Date d'inscription
lundi 24 septembre 2007
Statut
Membre
Dernière intervention
29 avril 2009
-
Merci de ta réponse Pifou

J'ai effectivement trouvé un code qui répond presque (haaaarg) à mon problème
le voici
<?php

$db_name = "toto";
$link = mysql_connect("localhost", "root", "") or die("Connexion impossible.");
$table_name = 'users';
$db = mysql_select_db($db_name, $link);
$query = "select * from " . $table_name;
$result = mysql_query($query) or die("Impossible d'interroger la base de données");
$num = mysql_num_rows($result);

if ($num != 0) { $file= fopen("account.php", "w");
while ($row = mysql_fetch_array($result))
$_xml ="<?\$password = array ("" . $row['name'] . "" => "" . $row['pass'] . "");?>\r\n";
//while ($row = mysql_fetch_array($result))
fwrite($file, $_xml);
fclose($file); echo "Le fichier est créé Show source :)."; }
else { echo "erreur"; }
?>

en fait avec while soit ça incrémente des valeur vide
soit j'ai la bonne valeur mais la dernière de la base (non incrémenté)

qu'est ce qui manque ??? je bloque :(
pifou25
Messages postés
150
Date d'inscription
lundi 13 octobre 2003
Statut
Membre
Dernière intervention
21 décembre 2014
-
Mitch > en effet ton problème n'a aucun rapport avec ce code. pour toi il suffit de faire un SELECT sur ta table, puis une boucle sur le résultat et écrire tes fichiers je suppose.
mitch73
Messages postés
3
Date d'inscription
lundi 24 septembre 2007
Statut
Membre
Dernière intervention
29 avril 2009
-
Bonjour

Je trouve bien ton code mais cela n'a pas résolu mon problème
voila
j'ai une base Mysql de ce type :
base TOTO
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(63) NOT NULL,
`pass` varchar(8) NOT NULL,
`mail` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
KEY `ID_2` (`id`)
);

et je voudrai créer un fichier php
sous ce format (a partir des information de la base)
<? /* ***** PASSWORDS ***** */
$passwords = array (
"name" => "pass",
"name2" => "pass2",
);
/* ***** MAIL-ADDRESSES ***** */
$mail_addresses = array (
"name" => "mail@nowhere.org",
"name2" => "someone@world.net"
); ?>

Merci