Salut
Je travaille sur une application web.(tournant en php)
Je voudrais stocker les champs d'une table de la bdd (MySql)dans un fichier xml.
Pour cela voici une fonction que j'ai créer en php :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34function f_evalcreatefichierxml($lnguserid,$lngevalid,$lngevalcampid) { global $strsqlns; $strvaluetable=$strsqlns."EVAL"; //Requête sql pour récupérer les infos ds la bdd $strsql="SELECT ID_EVAL, DESCRIPTION, ID_OWNER FROM ".$strsqlns."EVAL"; //exécution de la requete SQL $q=f_sqlselect($strsql); $number_of_products = f_sqlresultrowcount($q); //création du fichier xml $xml = '<?xml version="1.0" encoding="ISO-8859-1" ?>'.'<!DOCTYPE evaluation SYSTEM "evaluation.dtd">'; $xml .='<evaluation>'; while ($row = f_sqlresultfetcharray($q)) { $xml .= '<EVAL>'.$row['ID_EVAL'].'</EVAL>'; $xml .= '<DESCRIPTION>'.$row['DESCRIPTION'].'</DESCRIPTION>'; $xml .= '<OWNER>'.$row['ID_OWNER'].'</OWNER>'; } $xml .= '</evaluation>'; $fp = fopen("EvaluationMysqlToXml.xml", 'w+'); fputs($fp, $xml); fclose($fp); echo 'Export XML effectue !<br><a href="EvaluationMysqlToXml.xml">Voir le fichier</a>'; }
Voici le DTD qui va avec:
Mais j'ai une erreur de ce type la:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="ISO-8859-1"?> <!ELEMENT evaluation (EVAL,DESCRIPTION,OWNER)> <!ELEMENT EVAL (#PCDATA)> <!ELEMENT DESCRIPTION(#PCDATA)> <!ELEMENT OWNER(#PCDATA)>
Voila,je ne sais pas si j'étais trés clair,(ds ce cas ,je vous prie de m'excuser).La page XML ne peut pas être affichée
Impossible d'afficher l'entrée XML en utilisant la feuille de style . Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement.
--------------------------------------------------------------------------------
L'espace blanc requis était manquant. Erreur de traitement de la ressource file:///C:/dev/oxyd/home/webcompe/cpam94/back/ev...
<!ELEMENT DESCRIPTION(#PCDATA)>
----------------------^
(selon il y aurait peut être une erreur au niveau de la dtd,ou au niveau de son réferencement)
Ce serait tres sympa de votre part de m'aider à ce sujet.
Merci
Partager