salut les amis,
j'ai essayé de supprimer un nœud (track ) dans mon xml avec plusieurs méthodes mais j'ai pas réussi
voila mon xml :
et le DTD :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE playlist SYSTEM "playlist.dtd"> <playlist xmlns="http://xspf.org/ns/0/" version="1"> <trackList> <track id="S1207928088"><title>Sandia</title><creator>*******</creator><location>http://******/mp3/1.mp3</location></track> <track id="S1207928715"><title>ee</title><creator>*********</creator><location>http://*****/mp3/2.mp3</location></track> </trackList> </playlist><
et mon code php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <!ELEMENT playlist (trackList)> <!ATTLIST playlist version CDATA #IMPLIED> <!ATTLIST playlist xmlns CDATA #IMPLIED> <!ELEMENT trackList (track+)> <!ELEMENT track (title,creator,location)> <!ATTLIST track id ID #REQUIRED> <!ELEMENT title ANY> <!ELEMENT creator ANY> <!ELEMENT location ANY>
et j'ai essyé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if (isset($_GET['id'])){ $id=$_GET['id']; $songsup = $dom->getElementsByTagName("trackList")->item(0) ; $songsup1 = $dom->getElementById("$id") ; $songsup->removeChild($songsup1) ; $dom->save('play_liste.xml'); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 if (isset($_GET['id'])){ $id=$_GET['id']; $xp = new DomXPath($dom); $del = $xp->query('/playlist/trackList/track[@id="' . $_GET['id'] . '"]/*'); $item = $del->item(0); $item->parentNode->removeChild($item); $dom->save('play_liste.xml'); }
Partager