Validation fichier XML sous PHP5

Validation fichier XML sous PHP5 - PHP - Programmation

Marsh Posté le 16-01-2008 à 12:22:14    

Bonjour,
 
j'essaie de valider un fichier XML via son schema XSD, j'utilise le code suivant :

Code :
  1. $dom = new DomDocument();
  2.  $dom->__construct();
  3.  $dom->load($this->cheminDacces);
  4.  $listeTag = $dom->documentElement->childNodes;
  5.  if (!$dom->schemaValidate("normes/LOM/lomLoose.xsd" )) {
  6.   echo "non valide";
  7.   $ok = false;
  8.                 } else
  9.   $ok= true;


 
Si mon fichier est valide => Ok ma méthode retourne bien true
Si mon fichier a un mauvais vocabulaire => j'ai des warnings, la méthode me retourne bien false.
Si mon fichier est mal formé => j'ai l'erreur suivante et rien d'autre, ma page ne s'exécute pas :
Citation:
Erreur CGI
L'application CGI spécifiée n'a pas renvoyé le jeu complet d'en-têtes HTTP.
 
Je suis sur PHP 5.1.4, je n'utilise pas de cgi...
Avez vous une solution ? Merci d'avance

Reply

Marsh Posté le 16-01-2008 à 12:22:14   

Reply

Marsh Posté le 16-01-2008 à 14:56:43    

1) Le constructeur est déjà appelé par new DomDocument(), pourquoi tu l'appelles une seconde fois?
2) Le load() ne te retournerait pas false par hasard dans ce cas?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 16-01-2008 à 17:12:21    

1) Le constructeur est déjà appelé par new DomDocument(), pourquoi tu l'appelles une seconde fois?
oui effectivement, cela ne sert a rien  :sweat:  
2) Le load() ne te retournerait pas false par hasard dans ce cas?
en fait en cas d'erreur le load ne me retourne rien.
 
Mais je viens de faire les tests sur un autre serveur en php 5.2 et cela fonctionne correctement :

Code :
  1. Erreur Fatale 73: expected '>' dans ex1.xml ligne 27
  2. Erreur 1872: The document has no document element. ligne 0


:)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed