Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2555 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  La meilleure méthode pour modifier un xml?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

La meilleure méthode pour modifier un xml?

n°1408437
_sammm
Posté le 18-07-2006 à 11:00:23  profilanswer
 

Bonjour à tous,
 
Je suis en train de faire un site en PHP/XML, mais voici que je me trouve confronté à un problème :
 
Comment bien faire pour modifier un fichier xml?
 
J'ai tenté un truc, c'est-à-dire, lire le fichier, et tout réécrire avec en plus mon objet en plus, ce qui je trouve, n'est pas très correct au niveau de la méthode...
 
Avez-vous d'autres solutions?
 
Merci beaucoup!

mood
Publicité
Posté le 18-07-2006 à 11:00:23  profilanswer
 

n°1408442
omega2
Posté le 18-07-2006 à 11:05:16  profilanswer
 

Pour modifier un fichier xml, le plus simple, c'est encore d'utiliser les fonctions de chargement/modification d'un fichier xml :
http://fr3.php.net/manual/fr/ref.xml.php
http://fr3.php.net/manual/fr/ref.simplexml.php
http://fr3.php.net/manual/fr/ref.domxml.php
 
Personellement, j'ai tendance à utiliser les deux derniers groupes de fonction en fonction de mes besoins.

n°1408447
_sammm
Posté le 18-07-2006 à 11:09:24  profilanswer
 

Merci pour cette réponse ultra-rapide, apparement, PHP ne le fait pas en natif, il faut installer un truc un plus...
Okay, je vais m'y atteler!  :)

n°1408471
anapajari
s/travail/glanding on hfr/gs;
Posté le 18-07-2006 à 11:38:24  profilanswer
 

SimpleXml est activé par défaut sur PHP5, tout comme DOM ( tout court et pas DOM XML qui est un peu deprecated).

n°1408600
_sammm
Posté le 18-07-2006 à 14:19:47  profilanswer
 

Je viens de trouver autre chose là... J'ouvre le xml, j'atteins la dernière ligne et je l'efface pour rajouter le nouvel "objet"
C'est mieux ou faut vraiment que je change la méthode, parce que j'ai regardé les liens qui m'ont été donné et je n'ai pas trop trouvé mon bonheur...

n°1408612
anapajari
s/travail/glanding on hfr/gs;
Posté le 18-07-2006 à 14:31:31  profilanswer
 

_sammm a écrit :

Je viens de trouver autre chose là... J'ouvre le xml, j'atteins la dernière ligne et je l'efface pour rajouter le nouvel "objet"
C'est mieux ou faut vraiment que je change la méthode, parce que j'ai regardé les liens qui m'ont été donné et je n'ai pas trop trouvé mon bonheur...


ça dépend la structure de ton xml, mais comme ça, j'aurais tendance à dire que c'est n'importe quoi.
Si tu as le xml suivant:


<cours>
 <salle>201</salle>
 <classe niveau="6eme" numero="12">
   <eleve>A</eleve>
   <eleve>B</eleve>
 </classe>
 <professeur>ANDRE</professeur>
</cours>


Et que tu souhaites rajouter un élève, ta méthode ne risque pas de fonctionner [:mlc]
 
Que tu l'as conseillé omega2, utilise le DOM ou simpleXML, il y en a vraiment pour 2 secondes.

n°1408622
_sammm
Posté le 18-07-2006 à 14:40:11  profilanswer
 

J'utilise simplexml pour lire le fichier, y'a pas de problème, mais je vois pas comment l'utiliser pour rajouter un objet ou en modifier un... à part en réecrivant tout...
Mais sinon, mon xml ne sera toujours avec une arbo du genre  
<test>
  <test1>
    <a></a>
    <b></b>
  </test2>
</test>
 
Mais si tu peux, si tu as le temps, m'expliquer comment tu ferais ça, ça m'aiderait beaucoup... parce que j'ai eu beau chercher sur php.net, ça me parle pas trop...

n°1408634
_sammm
Posté le 18-07-2006 à 14:52:41  profilanswer
 

hum, je crois que j'ai trouvé un truc 'achement intéressant... je vais approfondir la piste...
merci du coup de main, je reviendrais ptet poser une ou deux questions :)

n°1408635
omega2
Posté le 18-07-2006 à 14:53:22  profilanswer
 

_sammm > Moi aussi, j'utilise SimpleXML pour lire un fichier. De mémoire, la derniére fois que j'ai du passer d'une lecture simple à une lecture/écriture d'un fichier xml, j'ai juste utilisé la fonction de transformation d'un élément simpleXML en élément DOM et utilisé ensuite les fonctions dom pour la partie écriture.

n°1408638
_sammm
Posté le 18-07-2006 à 14:56:34  profilanswer
 

hoho, ça m'aide pas mal ce que tu me dis là... je vais jeter un coup à ce truc là aussi...
En tous cas, que de réactivité!

mood
Publicité
Posté le 18-07-2006 à 14:56:34  profilanswer
 

n°1409221
_sammm
Posté le 19-07-2006 à 11:00:01  profilanswer
 

C'est good! J'ai réussi ce que je voulais faire! Merci pour votre aide
Par contre, juste pour la mise en page, ça me met tous mes objets nouvellement créés en ligne sans retour...

n°1409228
anapajari
s/travail/glanding on hfr/gs;
Posté le 19-07-2006 à 11:03:35  profilanswer
 

rajoute un element br au endroit ou tu veux un retour à la ligne ou mieux style tes elements via css

n°1409248
_sammm
Posté le 19-07-2006 à 11:12:20  profilanswer
 

Je me suis mal exprimé, c'est dans le fichier xml que ça me met tout en ligne.

n°1409266
anapajari
s/travail/glanding on hfr/gs;
Posté le 19-07-2006 à 11:22:04  profilanswer
 

_sammm a écrit :

Je me suis mal exprimé, c'est dans le fichier xml que ça me met tout en ligne.


Nan nan c'est moi qui ait mal lu la question ;)
 
Si tu as un objet dom, tu peux lui préciser de formater la sortie:

Code :
  1. $doc->formatOutput = true;


n°1409280
_sammm
Posté le 19-07-2006 à 11:28:05  profilanswer
 

merci beaucoup!

n°1409299
_sammm
Posté le 19-07-2006 à 11:37:32  profilanswer
 

ça marche quand on lit un fichier, mais pas quand on le loade et qu'on écrit dessus.  :heink:  
bizarre, je vais essayé de trouver quelque chose sur php.net

n°1412439
_sammm
Posté le 24-07-2006 à 16:31:58  profilanswer
 

J'ai rien trouvé sur "comment qu'on fait pour écrire proprement le code dans un fichier xml"...
 
Personne n'a d'idée svp?
 
Merci!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  La meilleure méthode pour modifier un xml?

 

Sujets relatifs
[PHP/CSS] Modifier un styleMon texte dépasse des cadres, que modifier dans le code html ?
question méthode RDM c'est quoi ?modifier chemin du fichier racine (index.php)
utiliser une méthode booléenneWarning suite a utilisation d'une référence dans une méthode [RESOLU]
Mapping d'une méthode static vers Delphiscript impossible à modifier ?
Modifier un onclick en javascriptPossibilité de modifier propriétés document Office via PHP ??
Plus de sujets relatifs à : La meilleure méthode pour modifier un xml?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR