PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Re : Forum Général PHP » php et DOM » 30-12-2009 09:27:42

Salut !

Merci pour la réponse, en effet ça fonctionne avec SimpleXml, j'avais mal compris la notion de nœud, je pensait que je ne pouvais utiliser que DOM pour ajouter un enfant smile
Problème résolu !

#2 Forum Général PHP » php et DOM » 30-12-2009 09:27:42

Kakolac
Réponses : 2

Bonjour,

je débute en PHP et encore plus en XML...

Je me suis donc plongé dans DOM pour pouvoir réaliser ce que je souhaite, mais je rame sévèrement.

J'ai un fichier xml qui contient un catalogue de films, il est structuré comme suis :

<?xml version="1.0" encoding="utf-8"?>
<catalogue>
<film>
  <support>DVD</support>
  <titre>Million Dollar Baby</titre>
  <genre>Drame</genre>
  <annee>2005</annee>
  <realisateur>
    <nom>Eastwood</nom><prenom>Clint</prenom>
  </realisateur>
  <acteurs>
    <acteur1>
    <nom>Eastwood</nom><prenom>Clint</prenom>
    </acteur1>
    <acteur2>
    <nom>Swank</nom><prenom>Hilary</prenom>
    </acteur2>
    <acteur3>
    <nom>Freeman</nom><prenom>Morgan Freeman</prenom>
    </acteur3>
  </acteurs>
  <resume>
  Mon résumé.
  </resume>
  <avis>
  Mon avis.
  </avis>
</film>
</catalogue>

Je souhaite avec PHP et DOM ajouter un film au fichier xml, je bloque car il m'ajoute bien le film mais en dehors de la racine (catalogue) et à la fin du fichier.
Le début du code PHP :

//on ouvre le fichier xml
$dom = new DomDocument();
$dom->load('films.xml');

//creation du noeud film
$noeud = $dom->createElement("film");
$xmlfilm = $dom->appendChild($noeud);

//creation du noeud support
$xmlsupport = $dom->createElement("support");
$xmlfilm->appendChild($xmlsupport);

//insertion et création du texte dans le noeud support
$support_txt=$dom->createTextNode ("dvd");
$xmlsupport->appendChild ($support_txt);

Voilà, en espérant que vous puissiez m'aider smile

Merci d'avance !

Pied de page des forums

Propulsé par FluxBB