modifier un fichier XML

Eléphant du PHP | 199 Messages

30 juil. 2007, 16:44

Bon alors avec le code de Hubert tout marche.

(j'ai supprimé puis reajouter comme on avait commencé a le faire)

Par contre j'ai un probleme avec les "é" ca me donne ca : Warning: invalid character valueoutput conversion failed due to conv error in


une idée ?

merci

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 juil. 2007, 17:03

Souci d'encodage.
Ajoute l'attribut "encoding" :

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>
et un coup de utf8_encode() sur les données

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 199 Messages

30 juil. 2007, 17:34

merci pour utf8_encode() ca marche !


Par contre en utilisant la technique de supprimé et de réecrire la ligne, l'ordre de mes lignes change...

Et ca pose un probleme pour dans l'anim flash...

je vais essayer d'utiliser la technique de hubert avec la modification voir si ca ne change pas l'ordre de mes lignes...


edit :

Bon c'est super tout marche !!!

Merci beaucoup

et pour infos voici le code final :
//calcul du numero de l'image 
$num=($_POST['numero']-1); 

//creation contenu title 
$title=utf8_encode($_POST['title']); 

//on recup le fichier  
$xml = simplexml_load_file('../accueil/dewslider.xml'); 


//unset($xml->img[$num]);// supprime la 4ème balise img...  

$xml->img[$num]['title'] = $title; 
echo $xml->asXML('../accueil/dewslider.xml'); 
echo'<br>modif xml ok<br>';
Juste une derniere question cette ligne : echo $xml->asXML('../accueil/dewslider.xml');
je peux la supprimé ? ca affiche juste le resultat ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 juil. 2007, 18:01

Oui mais il faut bien les enregistrer les modifications donc tu ne peux pas la supprimer.

Si tu ne passes pas de paramètre à asXML() tu afficheras le résultat (le xml sera interprété sans htmlentities )

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 199 Messages

30 juil. 2007, 18:05

si je supprime juste le echo ca enregistre mais ca affiche pas le resultat?

En faites moi je voudrais juste ne pas avoir mes image qui s'affiche...

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 juil. 2007, 18:07

ahh... et bien supprime le "echo" pour voir :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 199 Messages

30 juil. 2007, 18:12

Au top !!!


Merci a tous ;-)

je met résolu !