Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > DOMXML
DOMXML Forum d'entraide pour l'extension DOMXML permettant de manipuler des documents XML en PHP 4 (approche DOM). Avant de poster -> tutoriels DOMXML
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 29/04/2008, 12h25   #1
Membre expérimenté
 
Inscription : janvier 2007
Messages : 624
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 624
Points : 557
Points : 557
Par défaut [DOMXML] Edition d'un fichier XML

Bonjour,
Avec
PHP Version 4.4.3-dev,
DOM/XML API Version 20020815,
libxml Version 20622,
libxslt Version 1.1.15,
libxslt compiled against libxml Version 2.6.22

Je voulais développer une application de façon à créer un sitemap.xml pour google.
Les informations sont récupérées à partir d'une base MySQL.

Aucun problème à la création, j'obtiens un fichier structuré de la sorte :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>http://www.minsite.com/one.html</loc>
    <news:news>
      <news:publication_date>2001-08-01</news:publication_date>
    </news:news>
  </url>
  <url>
    <loc>http://www.minsite.com/deux.html</loc>
    <news:news>
      <news:publication_date>2001-08-02</news:publication_date>
    </news:news>
  </url>
</urlset>
Ensuite pour ajouter un élément, j'ai deux choix :
1- Recréer mon fichier xml.
2- Editer ce fichier.

Donc avec la première option, sans problème mais ceci impliques consultation MySQL et je voudrais l'éviter, surtout s'il y a beaucoup d'enregistrements.
Mais si j'optes pour la seconde option, j'obtiens un fichier de la sorte :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>http://www.minsite.com/one.html</loc>
    <news:news>
      <news:publication_date>2001-08-01</news:publication_date>
    </news:news>
  </url>
  <url>
    <loc>http://www.minsite.com/deux.html</loc>
    <news:news>
      <news:publication_date>2001-08-02</news:publication_date>
    </news:news>
  </url>
<url><loc>http://www.minsite.com/trois.html</loc><news:news><news:publication_date>2001-08-02</news:publication_date></news:news></url></urlset>
Vous remarquerez que la dernière ligne n'est pas indentée. Et ainsi de suite si je veux ajouter d'autres éléments, la dernière ligne n'est pas indentée après édition.
A savoir que pour l'édition je ne fais qu'un
Code :
$dom = domxml_open_file("sitemap.xml");
suivi de
Code :
$root = $dom->document_element();
Le reste du script est analogue à la création.
Un conseil ?
kabkab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 15h07   #2
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
Réponse dans la FAQ : Comment formater un document XML pour affichage ?. Il doit sans doute vous manquez l'option DOMXML_LOAD_DONT_KEEP_BLANKS au niveau du deuxième paramètre facultatif des options domxml_open_*.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 15h29   #3
Membre expérimenté
 
Inscription : janvier 2007
Messages : 624
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 624
Points : 557
Points : 557
Merci, Que dire de plus?

Que Dieu nous aide à apprendre plus...
kabkab est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h14.


 
 
 
 
Partenaires

Hébergement Web