2010-08-30 7 views
0

Je viens de démarrer un projet qui me permet d'envoyer des données en utilisant POST dans des formulaires HTML à un serveur d'une autre société. Cela renvoie XML. J'ai besoin de traiter ce XML pour afficher certaines informations sur une page Web. J'utilise PHP et je n'ai aucune idée par où commencer comment accéder au XML. Une fois que je sais comment y arriver, je sais comment y accéder en utilisant XPath.Comment traiter XML retourné après avoir envoyé un formulaire?

Des conseils pour commencer ou des liens vers des sites contenant des informations à ce sujet seraient très utiles.

+0

Est-ce AJAX ou synchrone? Et les utilisateurs POSTENT-ils le formulaire sur votre serveur, puis vous le POSTEZ sur le serveur tiers et transmettez les résultats à l'utilisateur, ou les utilisateurs POSTENT-ils le formulaire directement sur le serveur tiers (par exemple via AJAX)? –

+0

Il est asynchrone. Les utilisateurs publieront de mon serveur sur le serveur tiers. Les résultats reviennent alors en XML, qui est actuellement affiché dans le navigateur. Cependant, je veux traiter cela en PHP, donc je peux enregistrer certains éléments dans une base de données et en afficher d'autres à l'utilisateur –

Répondre

0

Vous devriez consulter la classe DOMDocument(), elle fait partie de l'installation PHP standard sur la plupart des systèmes.

http://us3.php.net/manual/en/class.domdocument.php

ohhh, je vois. Vous devez configurer un script PHP dans lequel le formulaire utilisateur est publié. Si vous souhaitez traiter la réponse XML, vous devez ensuite transmettre ces champs au serveur distant à l'aide de cURL.

http://us.php.net/manual/en/book.curl.php

Un exemple simple serait quelque chose comme:

<?php 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://the_remote_server"); 
curl_setopt($ch, CURLOPT_POST, TRUE); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST); 
$YourXMLResponse = curl_exec($ch); 
?> 
+0

Merci, je comprends comment configurer l'analyseur en utilisant DOMDocument() ou SimpleXML, mais quand je publie les données, comment puis-je obtenir le XML qui est retourné à mettre dans le DOMDocument ou simpleXML. –

+0

Utilisez cURL, j'ai édité la réponse pour l'expliquer ci-dessus. – KeatsKelleher

+0

C'est génial, exactement ce que j'étais après. Merci –