Creation d un fichier xml depuis donne mysql
Fermé
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
-
18 sept. 2009 à 13:30
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 5 févr. 2010 à 16:39
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 - 5 févr. 2010 à 16:39
Bonjour a tous,
J ai creer une gallerie photos en flash et j aimerais l alimenter par un chemin depuis ma base de donné
ex : ma base
id/ url / ..
1/ www.123.fr/im/1.jpg/...
2/.....
j aimerais donc que php me creer le fichier xml avec toutes les entrer de la table
Merci pour votre aide
J ai creer une gallerie photos en flash et j aimerais l alimenter par un chemin depuis ma base de donné
ex : ma base
id/ url / ..
1/ www.123.fr/im/1.jpg/...
2/.....
j aimerais donc que php me creer le fichier xml avec toutes les entrer de la table
Merci pour votre aide
A voir également:
- Creation d un fichier xml depuis donne mysql
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir un fichier .bin - Guide
- Xml download - Télécharger - Édition & Programmation
12 réponses
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
18 sept. 2009 à 15:43
18 sept. 2009 à 15:43
Si tu ne maîtrise pas le dom, tu n'es pas obligé de l'utiliser, cela a même peu d'intérêts pour construire un fichier xml.
Le xml ce n'est rien d'autres que des balises, du texte donc.
Par exemple pour une table article, on pourrait faire :
Comme tu vois, rien de compliqué.
Le xml ce n'est rien d'autres que des balises, du texte donc.
Par exemple pour une table article, on pourrait faire :
$sql = 'SELECT id, titre, contenu FROM article'; $query = mysql_query($sql) or exit(mysql_error()); $xml = '<?xml version="1.0" encoding="ISO-8859-1"?>'; $xml .= '<articles>'; while( $row = mysql_fetch_assoc($query) ) { $xml .= '<article id="' . $row['id'] . '">'; $xml .= '<titre>' . htmlspecialchars($row['titre']) . '</titre>'; $xml .= '<contenu>' . htmlspecialchars($row['contenu']) . '</contenu>'; $xml .= '</article>'; } $xml .= '</articles>'; // Affichage header('Content-type: text/xml; charset=ISO-8859-1'); echo $xml;
Comme tu vois, rien de compliqué.
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
18 sept. 2009 à 14:45
18 sept. 2009 à 14:45
merci de ta reponse
Par contre la je bloque
<?php
require "connect.php";
$reponse = mysql_query("SELECT * FROM t2 ")or die(mysql_error()); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table :
while ($donnees = mysql_fetch_array($reponse) )
{
$dom = new DomDocument();
$dom->save('test1.xml');
//??//
}
?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<IMAGES>
<IMG urlimage="images/miniature/traditionnel/im_181.jpg" description="Description1"/>
<IMG urlimage="images/miniature/traditionnel/im_173.jpg" description="Description2"/>
......
</IMAGES>
je ne vois pas comment faire pour ecrire l url et la descritpion
Par contre la je bloque
<?php
require "connect.php";
$reponse = mysql_query("SELECT * FROM t2 ")or die(mysql_error()); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table :
while ($donnees = mysql_fetch_array($reponse) )
{
$dom = new DomDocument();
$dom->save('test1.xml');
//??//
}
?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<IMAGES>
<IMG urlimage="images/miniature/traditionnel/im_181.jpg" description="Description1"/>
<IMG urlimage="images/miniature/traditionnel/im_173.jpg" description="Description2"/>
......
</IMAGES>
je ne vois pas comment faire pour ecrire l url et la descritpion
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
19 sept. 2009 à 10:01
19 sept. 2009 à 10:01
J'ai fait un script (assez complexe certes) pour justement gerer des photos dans une animations flash, si tu veut je t'envoie mes sources, .
Le principe est somme toute assez simple, tu upload tes photos, et a chaque fois ca te recree ton xml de reference. deja pas besoin de base de données tout est dans l'xml
Ca parait simple comme ça.. non .. ;-)
Le principe est somme toute assez simple, tu upload tes photos, et a chaque fois ca te recree ton xml de reference. deja pas besoin de base de données tout est dans l'xml
Ca parait simple comme ça.. non .. ;-)
M@dien
Messages postés
437
Date d'inscription
mercredi 29 juillet 2009
Statut
Membre
Dernière intervention
23 septembre 2010
74
18 sept. 2009 à 14:16
18 sept. 2009 à 14:16
Bonjour,
Tu peux t'aider de ce tuto pour créer ton fichier XML:
https://eusebius.developpez.com/php5dom/
après il suffit de combiner xml et les données récupérées de la base.
Tu peux t'aider de ce tuto pour créer ton fichier XML:
https://eusebius.developpez.com/php5dom/
après il suffit de combiner xml et les données récupérées de la base.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
18 sept. 2009 à 14:24
18 sept. 2009 à 14:24
merci de ta reponse
J aime bien ton "juste" mais je debute en php je n es que quelque base
Connais tu pas un tuto ou un exmeple?
merci
J aime bien ton "juste" mais je debute en php je n es que quelque base
Connais tu pas un tuto ou un exmeple?
merci
M@dien
Messages postés
437
Date d'inscription
mercredi 29 juillet 2009
Statut
Membre
Dernière intervention
23 septembre 2010
74
18 sept. 2009 à 14:29
18 sept. 2009 à 14:29
Pour bien apprendre le PHP tu peux lire ce tuto:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
Et plus particulièrement les parties traitant des bases de données:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/914293-lisez-des-donnees#ss_part_2
-> Dans la boucle while de la récupération des données, au lieu d'afficher les données, tu les inscris dans le fichier XML, en t'aidant du tuto DOM-XML que je t'ai donné dans mon 1er message.
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
Et plus particulièrement les parties traitant des bases de données:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/914293-lisez-des-donnees#ss_part_2
-> Dans la boucle while de la récupération des données, au lieu d'afficher les données, tu les inscris dans le fichier XML, en t'aidant du tuto DOM-XML que je t'ai donné dans mon 1er message.
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
18 sept. 2009 à 15:48
18 sept. 2009 à 15:48
ah oui effectivement c est tres simple merci pour l exemple
Mais la le fichier ne se creer pas ou bien?
je vais tester
Mais la le fichier ne se creer pas ou bien?
je vais tester
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
18 sept. 2009 à 15:51
18 sept. 2009 à 15:51
Pour enregistrer le fichier, utilise file_put_contents()
;)
;)
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
18 sept. 2009 à 15:54
18 sept. 2009 à 15:54
ok mais je le met ou? a la place de affichage?
Pour l instant il me met une erreur à l'affichage
cele-ci
Warning: Cannot modify header information - headers already sent by (output started at /homez.232/gautomob/www/xml.php:9) in /homez.232/gautomob/www/xml.php on line 29
Pour l instant il me met une erreur à l'affichage
cele-ci
Warning: Cannot modify header information - headers already sent by (output started at /homez.232/gautomob/www/xml.php:9) in /homez.232/gautomob/www/xml.php on line 29
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
19 sept. 2009 à 09:47
19 sept. 2009 à 09:47
up personne Merci
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
19 sept. 2009 à 09:56
19 sept. 2009 à 09:56
L'erreur du header est une erreur fréquente, en faisant une petite recherche sur internet tu trouveras la solution.
Ensuite, pour le file_put_contents, un saut vers la documentation php fournira réponse à ta question.
Ensuite, pour le file_put_contents, un saut vers la documentation php fournira réponse à ta question.
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
19 sept. 2009 à 10:22
19 sept. 2009 à 10:22
merci de ta reponse
J ai deja fait la recherche mais je ne sais pas quoi mettre dans la formule
int file_put_contents ( string filename , mixed data , int flags , resource context )
c est bien cela?
Pour l autre erreur je vais chercher
J ai deja fait la recherche mais je ne sais pas quoi mettre dans la formule
int file_put_contents ( string filename , mixed data , int flags , resource context )
c est bien cela?
Pour l autre erreur je vais chercher
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
>
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
19 sept. 2009 à 11:28
19 sept. 2009 à 11:28
Oui, prends en exemple les utilisations décrites dans la doc,
audi68
Messages postés
571
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
5 août 2015
9
>
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
19 sept. 2009 à 11:48
19 sept. 2009 à 11:48
j essaie depuis avant mais imposible toujours une erreur a cette ligne
$num_bytes = file_put_contents("example.xml", $xml);
<?php
require "connect.php";
$reponse = mysql_query("SELECT * FROM voiture ")or die(mysql_error()); // Requête SQL
$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>';
$xml .= '<articles>';
while( $row = mysql_fetch_assoc($reponse) )
{
$xml .= '<article id="' . $row['idd'] . '">';
$xml .= '<titre>' . htmlspecialchars($row['marque']) . '</titre>';
$xml .= '<contenu>' . htmlspecialchars($row['modele']) . '</contenu>';
$xml .= '</article>';
}
$xml .= '</articles>';
$num_bytes = file_put_contents("example.xml", $xml);
if( $num_bytes === false ) {
// file wasn't written successfully
echo 'Error writing file';
}
else {
echo $num_bytes . ' bytes were written';
}
// Affichage
echo $xml;
?>
merci de ton aide
$num_bytes = file_put_contents("example.xml", $xml);
<?php
require "connect.php";
$reponse = mysql_query("SELECT * FROM voiture ")or die(mysql_error()); // Requête SQL
$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>';
$xml .= '<articles>';
while( $row = mysql_fetch_assoc($reponse) )
{
$xml .= '<article id="' . $row['idd'] . '">';
$xml .= '<titre>' . htmlspecialchars($row['marque']) . '</titre>';
$xml .= '<contenu>' . htmlspecialchars($row['modele']) . '</contenu>';
$xml .= '</article>';
}
$xml .= '</articles>';
$num_bytes = file_put_contents("example.xml", $xml);
if( $num_bytes === false ) {
// file wasn't written successfully
echo 'Error writing file';
}
else {
echo $num_bytes . ' bytes were written';
}
// Affichage
echo $xml;
?>
merci de ton aide
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
5 févr. 2010 à 16:39
5 févr. 2010 à 16:39
pas de soucis je te les envoie ce WE ;-)