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] insertBefore removeChild (debutant)


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 39
    Par défaut [DOM] insertBefore removeChild (debutant)
    Bonjour,

    J'essaie de gerer l'affichage de mes videos grace a un fichier xml, qui contient ma liste. Je récupère un paramètre (url de la vidéo) puis je parcours mon fichier xml pour remonter le nœud de cette vidéo en tête de liste. Mon but est d'afficher un lecteur vidéo avec en tête de liste une certaine vidéo.

    C'est la première fois que je fais du DOM xml soyez indulgent svp ^^

    Voici mon code
    Code : 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
     
    	$objDOM = new DOMDocument();
    	$objDOM->load("playlist.xml");
     
            //Recuperation du noeud de la premiere video
    	$node = $objDOM->getElementsByTagName("track")->item(0);
     
            // Boucle pour trouver celle a mettre en tete de liste
    	$tracks = $objDOM->getElementsByTagName("track");
    	foreach($tracks as $value)
    	{
    		if ($_GET['video'] == $value->getAttribute('name'))
    		{
    			$clone = $value->cloneNode();
    			$value->parentNode->removeChild($value);
    			$newNode = $objDOM->insertBefore($clone, $node);//Erreur ici
     
    			$objDOM->save("playlist.xml");
    		}
    	}
    Voici mon fichier XML :
    Code : 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    <?xml version="1.0"?>
    <playlist xmlns="http://xspf.org/ns/0/" version="1">
       <title>Example XSPF playlist for the JW Player</title>
       <info>http://developer.longtailvideo.com/trac</info>
       <tracklist>
          <track name="locationvideo1">
             <title>Video 1</title>
             <creator>Creator de video 1</creator>
             <info>info video 1</info>
             <annotation>Annotations video 1</annotation>
             <location>locationvideo1</location>
          </track>
          <track name="locationvideo2">
             <title>Video 2</title>
             <creator>Creator de video 2</creator>
             <info>info video 2</info>
             <annotation>Annotations video 2</annotation>
             <location>locationvideo2</location>
          </track>
    	  <track name="locationvideo3">
             <title>Video 3</title>
             <creator>Creator de video 3</creator>
             <info>info video 3</info>
             <annotation>Annotations video 3</annotation>
             <location>locationvideo3</location>
          </track>
    	  <track name="locationvideo4">
             <title>Video 4</title>
             <creator>Creator de video 4</creator>
             <info>info video 4</info>
             <annotation>Annotations video 4</annotation>
             <location>locationvideo4</location>
          </track>
       </tracklist>
    </playlist>
    Voici mon erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Uncaught exception 'DOMException' with message 'Not Found Error' in C:\wamp\www\test\index.php:16 Stack trace: #0 C:\wamp\www\test\index.php(16): DOMNode->insertBefore(Object(DOMElement), Object(DOMElement)) #1 {main} thrown in C:\wamp\www\test\index.php on line 16
    Si vous avez des conseils, n'hésitez pas, je débute et j'ai beaucoup de mal a comprendre.
    Merci d'avance

    ps : ce post est dans un autre forum, et je pense qu'il est plus adapte dans celui-ci, desole pour la double creation.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $clone = $value->cloneNode(TRUE);
    $value->parentNode->removeChild($value);
    $newNode = $node->parentNode->insertBefore($clone, $node);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 39
    Par défaut
    Merciiiiiii beaucoup !!

    J'ai encore 1 petite question qui n'est pas forcément liée au xml mais à mon player flash (JW player):

    Je n'arrive pas faire fonctionner l'autostart :
    Code : 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
     
    <object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='300' height='300' id='player5' name='player5'>
       <param name='movie' value='player-viral.swf'>
       <param name='allowfullscreen' value='true'>
       <param name='allowscriptaccess' value='always'>
       <param name='flashvars' value='file=playlist.xml'>
       <embed id='player5'
              name='player5'
              src='player-viral.swf'
              width='580'
              height='315'
              allowscriptaccess='always'
              allowfullscreen='true'
              autostart='true'
              flashvars="file=playlist.xml&playlist=right&playlistsize=180"
       />
    </object>
    Si quelqu'un a une idée ...

    Sinon encore merci pour la réponse rapide et efficace
    Je mettrai résolu d'ici demain, en attendant d'avoir une réponse a ma dernière question.

    EDIT : reponse a ma dernière question

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. DOM XPath removeChild()
    Par Alex101283 dans le forum Langage
    Réponses: 1
    Dernier message: 18/07/2019, 19h44
  2. [DOM] Problême DOM : removeChild & IE
    Par Oric dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/06/2006, 14h52
  3. [debutant] DOM
    Par rzayani dans le forum Bibliothèques
    Réponses: 11
    Dernier message: 27/04/2006, 14h17
  4. [DOM] Utilisation de removeChild
    Par sylsau dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/01/2006, 10h31
  5. [DOM] erreur lors de removeChild
    Par jeff_! dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 06/12/2005, 12h43

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