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

  FORUM HardWare.fr
  Programmation
  PHP

  Utilisation de XML comme base de donnnée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Utilisation de XML comme base de donnnée

n°1876879
Criss06
Posté le 23-04-2009 à 15:39:50  profilanswer
 

Bonjour,
Je voudrais faire un petit chat,le plus simple possible, en utilisant comme base de donnée un fichier XML.
Je voudrais savoir comment "insérer" une ligne dans un fichier XML à partir d'un code PHP; en effet voici mon fichier XML :
          <post>
          <message>Bonjour et bienvenu a vous !</message>
          <message>Criss: Bonjour</message>
          </post>
 
J'aimerais en fait pouvoir insérer des nouveaux messages entre </message> et </post> .
La solution serait de remplacer </post> par '<message>mon message</message></post>' mais je n'ai rien trouvé sur internet pouvant m'éclairer.  

mood
Publicité
Posté le 23-04-2009 à 15:39:50  profilanswer
 

n°1876909
_v1ru5_
Posté le 23-04-2009 à 15:51:24  profilanswer
 

tu peux regarder du coté des extensions permettant la manipulation XML tel que DOM XML ou simpleXML.


Message édité par _v1ru5_ le 23-04-2009 à 15:51:35
n°1876929
Criss06
Posté le 23-04-2009 à 16:06:37  profilanswer
 

j'avais regardé DOM XML, et j'avais trouvé
DOMDocumentFragment::appendXML avec comme exemple :
 $doc = new DOMDocument();
 $doc->loadXML("<root/>" );
 $f = $doc->createDocumentFragment();
 $f->appendXML("<foo>text</foo><bar>text2</bar>" );
 $doc->documentElement->appendChild($f);
 echo $doc->saveXML();  
Si j'ai bien compris, ça va créer un XML en entier. Il faudrait donc s'arranger pour que le nouveau fichier XML généré contienne tout ce qu'avait le précédent (+ ce que je veux ajouter bien sûr ) et écraser l'ancien.  
 
(Source: http://fr.php.net/ )

n°1876942
_v1ru5_
Posté le 23-04-2009 à 16:17:24  profilanswer
 

exactement.
pour ton écrasement, n'utilise pas loadXML et saveXML mais load et save
la méthode DOMDocument::load(filename) te permet de charger depuis un fichier.
après tu fais tes traitements et pour finir tu utilise DOMDocument::save(filename) où filename est le nom du fichier a écraser

n°1876963
superbob56
Posté le 23-04-2009 à 16:32:03  profilanswer
 

Lorsque tu manipule du XML, fais attention à la volumétrie, parce que si ton XML devient 'trop' gros et que tu le manipule avec DOM, tu va mettre beaucoup de temps à le parser, donc tu risque d'avoir un temps de réponse trop grand ... :s
Dans ce cas SimpleXML peut être mieux car 'plus rapide'.
Après si ta volumétrie n'est pas trop importante, ça ne pose pas de problème de le parser en DOM.
 


---------------
By bob.
n°1876966
_v1ru5_
Posté le 23-04-2009 à 16:35:37  profilanswer
 

le hic avec simpleXML c'est que c'est fait pour le lecture et l'écriture. Si il veut faire des suppressions DOM est a préférer

n°1876972
Criss06
Posté le 23-04-2009 à 16:42:36  profilanswer
 

ça me rend ce que je cherchais merci beaucoup pour ton aide  !


Message édité par Criss06 le 23-04-2009 à 17:03:37
n°1876973
Criss06
Posté le 23-04-2009 à 16:44:16  profilanswer
 

Après au niveau volume, il doit surement être possible de faire un "clear" après un certain nombre de message.


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

  Utilisation de XML comme base de donnnée

 

Sujets relatifs
Modifier une Base Access via un .exe en VB6[Lazarus] Utilisation de TChart?
AS3 : Utilisation de variable et function d'une classe à l'autre (EtenErreur de débutant et utilisation lib Eet
affichage XML dans mailaffichage XML dans mail
PageFlip + fichier XML :sutilisation personnalisée de Google Map
pb d'enregistrement de sessions en base de donnéesChoix d'un CMS - Utilisation partculière
Plus de sujets relatifs à : Utilisation de XML comme base de donnnée


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