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

  FORUM HardWare.fr
  Programmation
  PHP

  Gestion de fichier xml par php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Gestion de fichier xml par php

n°1457685
seb1395
Posté le 15-10-2006 à 20:43:41  profilanswer
 

Bonjour à tous,  
 
J'essaye d'afficher le nom de la racine xml, puis l'ensemble des titres du fichier, par une fonction php.  
 
Voici mon php :  
 
 

Code :
  1. <?php
  2. $dom= new domDocument('1.0', 'iso-8859-1');
  3. $dom->load('essai.xml');
  4. //$dom->validate();  
  5. $racine=$dom->documentElemnt;
  6. echo $racine->nodeName;
  7. ?>


 
 
 
 
Voici mon essai.xml :  
 
 

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
  2. <!DOCTYPE livre SYSTEM "livre.dtd">
  3. <livre titre="Annabac 2007">
  4.   <Chapitre titre="Maths">
  5.    <texte> Maths  Maths  Maths  Maths  Maths  Maths  Maths  Maths  Maths  Maths  Maths  Maths </texte>
  6.   </Chapitre>
  7.   <Chapitre titre="Physiques">
  8.    <texte> Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques  Physiques </texte>
  9.   </Chapitre>
  10.   <Chapitre titre="SVT">
  11.    <texte> SVT  SVT  SVT  SVT  SVT  SVT  SVT  SVT  SVT </texte>
  12.   </Chapitre>
  13. </livre>


 
 
 
Et voici mon DTD :  
 
 

Code :
  1. <!ELEMENT Chapitre ( texte ) >
  2. <!ATTLIST Chapitre titre NMTOKEN #REQUIRED >
  3. <!ELEMENT livre ( Chapitre+ ) >
  4. <!ATTLIST livre titre CDATA #REQUIRED >
  5. <!ELEMENT texte ( #PCDATA ) >


 
 
 
 
Je l'ai fait en cours, cela marche très bien (nous sommes sous linux)  
 
Mais dès que je teste chez moi (c'est à dire : PC windows XP, seveur Free.)  
J'ai cette erreur :  
 
 

Code :
  1. Warning: domdocument() expects at least 1 parameter, 0 given in /mnt/124/free.fr/c/d/seb1395/xmltest/index.php on line 2
  2. Fatal error: Call to undefined function: load() in /mnt/124/free.fr/c/d/seb1395/xmltest/index.php on line 3


 
 
De plus voici ce que j'ai avec phpinfo :

Code :
  1. PHP Version 4.4.3-dev
  2. domxml
  3. DOM/XML  enabled 
  4. DOM/XML API Version  20020815 
  5. libxml Version  20616 
  6. HTML Support  enabled 
  7. XPath Support  enabled 
  8. XPointer Support  enabled 
  9. DOM/XSLT  enabled 
  10. libxslt Version  1.1.12 
  11. libxslt compiled against libxml Version  2.6.16


 
 
Merci pour votre aide !!!  
Je suis sur que c'est encore une histoire de " " ".  
 
Bonne fin de soirée.

mood
Publicité
Posté le 15-10-2006 à 20:43:41  profilanswer
 

n°1458259
omega2
Posté le 16-10-2006 à 18:24:33  profilanswer
 

domDocument n'a besoin d'aucun paramettre. C'est une erreur que de lui en donner et ce n'est pas par ce que le serveur de ton école n'affiche pas les "warning" que tout est parfait dans ton code.
 
Pour le "fatal error" il faudrait être sur que ton fichier existe bien dans ce dossier là et qu'il n'y a aucune différence de casse dans le nom du fichier (les serveurs de free comme tout serveur unix fait la différence entre une majuscule et une minuscule)

n°1458269
naceroth
Posté le 16-10-2006 à 18:49:28  profilanswer
 

omega2 a écrit :

domDocument n'a besoin d'aucun paramettre. C'est une erreur que de lui en donner et ce n'est pas par ce que le serveur de ton école n'affiche pas les "warning" que tout est parfait dans ton code.


 
C'est sympa, mais le warning dit exactement le contraire. Pareil pour le load(), c'est la fonction qui n'existe pas, pas une quelconque erreur sur le nom du fichier.
 
Pas la forme aujourd'hui omega2 :D

n°1458271
anapajari
s/travail/glanding on hfr/gs;
Posté le 16-10-2006 à 18:52:09  profilanswer
 

omega2 a écrit :

domDocument n'a besoin d'aucun paramettre. C'est une erreur que de lui en donner et ce n'est pas par ce que le serveur de ton école n'affiche pas les "warning" que tout est parfait dans ton code.


Nan nan :o les paramètres c'possible.
http://fr.php.net/manual/fr/functi [...] struct.php

Citation :

Description
class DOMDocument {
__construct ( [string version [, string encoding]] )
}


 
Par contre dans le phpinfo sauf erreur de ma part il n'y a pas le support de DOM ( tout court) mais uniquement celui de DOMXML. De mémoire je crois que DOM est utilisable sur free mais uniquement en php5 et qu'il faut donc renommer les pages en .php5.

n°1458273
naceroth
Posté le 16-10-2006 à 18:57:34  profilanswer
 

A noter, pour rebondir sur ce que dit anapajari que la méthode load() fait partie de DOM (tout court :D) et pas de DOMXML (qui utilise un domxml_open_file) :)

n°1458572
FlorentG
Unité de Masse
Posté le 17-10-2006 à 10:43:17  profilanswer
 

Voilà, sous PHP4 y'a l'extension DOMXML, assez bof et jamais finie, et sous PHP5 y'a la vraie, DOM


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

  Gestion de fichier xml par php

 

Sujets relatifs
Gestion de fichier et de dossierGestion des données d'un fichier TXT
Fichier .bat : problème de gestion des variablesgestion de fichier et mode append
[Java] classe de gestion de fichier .ini à disposition par ici[vbs]Gestion des erreurs et fichier log...
Gestion droits fichierscript de gestion de fichier?
Gestion de fichier des repertoiresOptimisation de gestion de fichier
Plus de sujets relatifs à : Gestion de fichier xml par php


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