IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[DOM] problème avec replaceNode


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 25
    Points : 12
    Points
    12
    Par défaut [DOM] problème avec replaceNode
    Salut a tous,
    Je souhaite modifier un fichier xml dynamiquement. Dans ce cas la, je veut modifier les attribut d'un noeud. Je sais qu'il faut que j'utilise replaceNode mais a vrai dire je suis un peu perdu.

    Fichier xml:
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <Liste>
    <File id="5" label1="la chose" data1="videos/videos4.flv" description="blablabla c\'est super cool ce machin chose" realiser="machin" date="01/01/01" url1="www.google.fr"/>
    </Liste>

    Code php:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?php
    $idf=$_POST['id'];
    $mlabel1=$_POST["titre"];
    $mdata1=$_POST["l_videos"];
    $mdescription=$_POST["description"];
    $mrealiser=$_POST["realiser"];
    $mdate=$_POST["date"];
    $marticle=$_POST["l_article"];
    $mnomarticle="(lire la suite)";
     
    if(!$dom=DOMDocument::load("videos.xml")) {
    //if(!$dom->load("videos.xml")){
    echo "Erreur lors de l'analyse du document\n";
    exit;
    }
    $filesNodeList = $dom->getElementsByTagName('File');
    foreach($filesNodeList as $fileNode){
    $label1=$fileNode->getAttribute('label1');
    $data1=$fileNode->getAttribute('data1');
    if ( $fileNode->getAttribute('id') == $idf){
    $titre=$fileNode->replaceNode($mlabel1, $label1);
    $video=$fileNode->replaceNode($mdata1,$data1);
    }
    }
    $dom->save("videos.xml" );
    echo "reussi";


    Mon PHP ne marche pas... Est ce que quelqu'un pourrait m'aider?

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par lusiole
    if(!$dom=DOMDocument::load("videos.xml")) {
    Les erreurs commencent ici... DomDocument::load ne renvoie pas un objet DomDocument mais un booléen.
    il faut commencer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dom = new DomDocument();
    Et je te conseille de lire ça avant de continuer : http://eusebius.developpez.com/php5dom/
    C'est pas terminé mais ça t'aidera peut-être.

Discussions similaires

  1. [JS][DOM] problème avec removeChild()
    Par Jonathan.b dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/01/2008, 10h48
  2. [DOM] Problème avec la fonction getElementById
    Par CocoLeNain dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 04/01/2008, 19h29
  3. [DOM] Problème avec le tutoriel RSS
    Par Flashball dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 20/06/2007, 19h32
  4. [DOM] Problème avec appendChild
    Par it_bcn dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 16/02/2007, 12h12
  5. [DOM] Problèmes avec DOMDocument
    Par japey dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 23/05/2006, 12h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo