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 :

[SimpleXML] Suppression d'un élément


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 27
    Par défaut [SimpleXML] Suppression d'un élément
    Bonjour.
    J'ai un fichier XML qui fait un vidéo playlist.
    Il ressemble à ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <playlist version="1" xmlns="http://xspf.org/ns/0/">
    	<trackList>
    		<track>
    			<title>video</title>
    			<creator>video creatore</creator>
    			<location>video.flv</location>
    		</track>
    		<track>
    			<title>video_1</title>
    			<creator>video_1</creator>
    			<location>video_1.flv</location>
    		</track>	
    	</trackList>
    </playlist>
    Je charge le fichier dans une liste déroulante à l'aide de simpleXML. L'élément sélectionné est en suite attrapé dans la variables « $_POST['movies'] ». Ce que je veux c'est supprimer l'élement du playlist. Alors je fais.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    			$dom = new domDocument();
    			$dom->load('playlist.xml');
    			foreach ($dom->getElementsByTagName("track") as $node)
    				{
    					$v = $node->getElementsByTagName("location")->item(0)->nodeValue;
    					if($v == $_POST['movies'])
    					{
    						$dom->removeChild($v);
    					}
    				}
    La boucle tourne la comparaison s'effectue mais je bloque sur la suppression. Merci pour votre aide.

  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
    Vous essayé de supprimer quel élément ? La track ?
    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
    <?php
    $dom = new DomDocument;
    $dom->preserveWhiteSpace = FALSE;
    $dom->formatOutput = TRUE;
    $dom->load('playlist.xml');
    foreach ($dom->getElementsByTagName('track') as $track) {
        $location = $track->getElementsByTagName('location')->item(0);
        if ($location->nodeValue == $_POST['movies']) {
            $track->parentNode->removeChild($track);
        }
    }
     
    // Pour test
    header('Content-type: text/plain');
    echo $dom->saveXML();
    ?>

  3. #3
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 27
    Par défaut
    [QUOTE=julp]Vous essayé de supprimer quel élément ? La track ?
    oui le track avec ses enfants

  4. #4
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 27
    Par défaut
    $track->parentNode->removeChild($track); n'efface rien..........

Discussions similaires

  1. Ajout/Suppression dynamique d'éléments
    Par Norin dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/03/2007, 19h15
  2. Réponses: 9
    Dernier message: 09/02/2007, 14h24
  3. Confirmation de la suppression d'un élément dans un SGBD
    Par Atharendil dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/09/2006, 13h40
  4. Réponses: 8
    Dernier message: 01/04/2006, 10h10
  5. Réponses: 14
    Dernier message: 01/12/2003, 17h47

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