Enregistrer les données d'une requête php vers un fichier XML

Résolu
conseil198
Messages postés
51
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
28 avril 2014
- 22 janv. 2014 à 11:46
conseil198
Messages postés
51
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
28 avril 2014
- 24 janv. 2014 à 10:23
Bonjour,

J'ai un fichier PHP et Je souhaite faire une requête SQL dans ce fichier pour récupérer les données de la base et les enregistrer dans un fichier XML.
Je me demande si vous pouvez m'aider.

Merci A L'AVANCE.

2 réponses

mpmp93
Messages postés
6651
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
4
23 janv. 2014 à 21:53
Bonsoir,

$xmlDom = new DOMDocument();
$xmlDom->appendChild($xmlDom->createElement('results'));
$xmlRoot = $xmlDom->documentElement;

while ( $row = mysql_fetch_row($result) ) 
    {
      $xmlRowElementNode = $xmlDom->createElement('row');

      $i=0;
      for($i=0;$i<mysql_num_fields($result);$i++)
      {
          $xmlRowElement = $xmlDom->createElement(mysql_field_name($result,$i));
          $xmlText = $xmlDom->createTextNode($row[$i]);
            $xmlRowElement->appendChild($xmlText);

            $xmlRowElementNode->appendChild($xmlRowElement);
      }

      $xmlRoot->appendChild($xmlRowElementNode);
   }


    header('Content-type:  text/xml');
    echo $xmlDom->saveXML();


A+
0
conseil198
Messages postés
51
Date d'inscription
jeudi 9 janvier 2014
Statut
Membre
Dernière intervention
28 avril 2014

24 janv. 2014 à 10:23
Bonjour,
Je lai fait avec une autre manière: avec la manipulation des fichiers en PHP, ce qui donne:

<?php
$file = fopen("test.xml","w");
$a='
<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.2"><Document><name><![CDATA[Loire-Atlantique (44)]]></name><Style id="gitesdegaule.fr"><LineStyle><color>cc2d3939</color><width>3</width></LineStyle><PolyStyle><color>804d4def</color></PolyStyle></Style><Placemark id="loire-atlantique"><name><![CDATA[Loire-Atlantique (44)]]></name><styleUrl>#gitesdegaule.fr</styleUrl><Polygon><outerBoundaryIs><LinearRing><tessellate>1</tessellate><coordinates>
';

echo fputs($file,"$a");
?>

<?php

include ('connect.php');//connexion à la base
$requete = 'SELECT * FROM gpsversion';
$demande = mysql_query("$requete");
while ($donnees = mysql_fetch_array($demande))
{
echo $id = $donnees['id'];
echo $lng = $donnees['lng'];
echo $lat = $donnees['lat'];

fputs($file,"$id, $lng, $lat, ");
}
/////////
$a='
</coordinates></LinearRing></outerBoundaryIs></Polygon></Placemark></Document></kml>
';

echo fputs($file,"$a");


fclose($file);

////////

mysql_close();
?>
MERCI POUR VOTRE AIDE
0