Php et xml

loicone -  
 loicone -
Bonjour,

j'ai un site à faire dans lequel je me sert d'une base de données xml (eXist). J'aimerai affiché dans une page HTML généré en PHP du code XML en utilisant une feuille de style xslt.

J'ai testé plusieurs choses :

1) solution avec API eXist PHP :

$query = 'for $line in //book where $line/issue/@date >= "'.date ("Y-m-d", $date_news). '"
return
<book>
{ $line/titre }
{ $line/author }
{ $line/price }
</book>';

$db->setHighlight(FALSE);
$result = $db->xquery($query) or die ($db->getError());
# Get results
$hits = $result["HITS"];
$queryTime = $result["QUERY_TIME"];
$collections = $result["COLLECTIONS"];

# Show results

$xmlToParse = " <results>";

if ( !empty($result["XML"]) )
foreach ( $result["XML"] as $xml){
$xmlToParse .= $xml;
}

$xmlToParse .= "</results>";

echo $xmlToParse;

$xsl = "./API_PHP_Exist/xsl/nouveautes.xsl";
$result = getXsltResult($xsl,$xmlToParse,false);
echo $result;

$db->disconnect();

=>Résultat : mon fichier xml doit m'afficher le résultat dans un tableau et il m'affiche que le tableau sans les données dedans. (les données génerées s'affiche correctement si on les mets dans un fichier xml associé au fichier XSLT)

2)solution autre

$query = 'for $line in //book where $line/issue/@date >= "'.date ("Y-m-d", $date_news). '"
return
<book>
{ $line/titre }
{ $line/author }
{ $line/price }
</book>';

$db->setHighlight(FALSE);
$result = $db->xquery($query) or die ($db->getError());

touch("file.xml");
$fp=fopen("file.xml","w");
fwrite($fp,"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n
<?xml-stylesheet type='text/xsl' href='nouveautes.xsl'?>\n");

fwrite($fp,"<results>\n");
# Show results

//print_r($result["XML"]);
if ( !empty($result["XML"]) )
foreach ( $result["XML"] as $xml){
fwrite($fp,$xml."\n");
}

fwrite($fp,"</results>\n");

header('Location: file.xml');

=>Resultat : ça me retourne un fichier xml présenté avec mon fichier XSLT mais il ne s'affiche pas dan sma page HTML comme je voudrais.


Si quelqu'un connait une astuce je suis preneur.

Merci.
A voir également:

2 réponses

N@th@ Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   12
 
Une question : pourquoi utilise tu html/xslt et PHP/eXist et pas xHtml/CSS et PHP/MySQL
0
loicone
 
Parce que c'est un projet pour les cours et qu'il faut utiliser une base de données XML et mettre en forme avec XSLT. Je sais c'est complètement pourri mais bon... Moi j'utilise toujours PHP/MySQL et là je sais pas trop comment ça fonctionne.
0