Page 1 sur 1

Message d'erreur avec DOMXML

Posté : 16 nov. 2007, 18:12
par yeram
Bonjour à tous,

J'ai le message d'erreur suivant lorsque j'utilise ce code :
J'utilise EasyPHP-2.0b1 et j'ai même essayé avec WAMP.
aurait il une solution ????
merci
<?php
$dom = new DOMDocument();
$dom->load('test6.xml');
?> 
Warning: domdocument::domdocument() expects at least 1 parameter, 0 given in C:\wamp\www\test_xml\DOMXML6.php on line 2

Fatal error: Call to undefined method domdocument::load() in C:\wamp\www\test_xml\DOMXML6.php on line 3
Donc, j'ai essayer de modifier le code et remessage d'erreur :
<?php
$dom = new DOMDocument('UTF-8');
$dom->load('test6.xml');
?> 
Warning: domdocument::domdocument() [function.domdocument-domdocument]: Entity: line 1: parser error : Start tag expected, '<' not found in C:\wamp\www\test_xml\DOMXML6.php on line 2

Warning: domdocument::domdocument() [function.domdocument-domdocument]: UTF-8 in C:\wamp\www\test_xml\DOMXML6.php on line 2

Warning: domdocument::domdocument() [function.domdocument-domdocument]: ^ in C:\wamp\www\test_xml\DOMXML6.php on line 2

Fatal error: Call to undefined method domdocument::load() in C:\wamp\www\test_xml\DOMXML6.php on line 3
voici mon fichier XML:

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?> <items xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <item already_exported="true" id="10280201"> <BRP_M_Marque><![CDATA[SAINT ALBRAY PRE EMBALLE]]></BRP_M_Marque> <BRP_M_BRP_M_NomCommercial><![CDATA[ST ALBRAY PORTION PE 200G POIDS FIXE PROMO]]></BRP_M_BRP_M_NomCommercial> <BRP_M_Variete></BRP_M_Variete> <BRP_M_NumAgrement></BRP_M_NumAgrement> <BRP_M_GencodUB><![CDATA[3222110017298]]></BRP_M_GencodUB> </item> </items>

Posté : 16 nov. 2007, 19:16
par @rthur
Bonjour,

Tu es bien en PHP5?


Pour rappel, pour PHP4: DOMXML
http://fr2.php.net/manual/fr/ref.domxml.php

Pour PHP5: DOM
http://fr2.php.net/manual/fr/ref.dom.php

Posté : 16 nov. 2007, 20:31
par yeram
Oui, je suis en PHP5.
Merci pour le lien. Mais normalement, le code devrait fonctionner.
Ca pourrait venir de quoi ?

Posté : 16 nov. 2007, 22:12
par @rthur
Visiblement il s'agit d'un bug avec Wamp et EasyPHP qui continue d'inclure les dll de domxml ce qui occasionne le message d'erreur que tu obtiens...

La solution serait d'éditer ton php.ini, de mettre en commentaire la ligne

Code : Tout sélectionner

extension=php_domxml.dll
et de relancer Apache.

Une autre solution (qui revient au même mais qui est moins propre) est de renommer le fichier c:\wamp\php\ext\php_domxml.dll


Source: http://www.symfony-project.com/forum/in ... #msg_num_8

Posté : 16 nov. 2007, 23:26
par Invité
Ok merci, ca corrige ma première erreur.
Quant à la second, load est une méthode et non une fonction, il faudrait donc écrire :
$dom->load('book.xml');
Et non
$dom = load('book.xml');