Que tal
Me mandan una url con el siguiente formato
www.misitio.com/index.php?variable=<?xml version="1.0" encoding="UTF-8" ?><clientes><total>2</total>..................</clientes>
La cosa es como hago tomar ese xml y parsearlo?.
| |||
Como parsear XML enviado por get Que tal Me mandan una url con el siguiente formato www.misitio.com/index.php?variable=<?xml version="1.0" encoding="UTF-8" ?><clientes><total>2</total>..................</clientes> La cosa es como hago tomar ese xml y parsearlo?. |
| |||
Gracias por las respuestas chicos, pero sabes cual es el problema que cuando hago un el $GET_['variable'] esto me trae solo los datos. Por ejemplo: Cuando hago un: Código PHP: http://www.misitio.com/index.php?variable<?xml version="1.0" encoding="UTF-8" ?><Clientes><total>2</total></Clientes> me muestra: 2 Se entiende? Al enviar estos caracteres <></> por get php elimina todo lo que contentan ellos y por eso cuando tomo esa variable me trae solo los datos y no todo el xml completo, mi pregunta es : ¿Como puedo hacer para recibir por get etiquetas html <></> ?, seguramente hay alguna configuracion de php que lo permita. Última edición por GatorV; 07/11/2008 a las 09:03 |
| ||||
Respuesta: Como parsear XML enviado por get Mmmm mas bien es como te hagan el envío, la variable debe de estar correctamente escapada, por ejemplo en PHP, utilizas urlencode() para codificar la variable correctamente, es por eso que la variable tiene que venir asi limpia, para que con PHP la puedas tomar. Ahora si solo haces un echo $_GET['variable'] sobre un archivo html, se van a interpretar las etiquetas y es por eso que solo te da 2, si quieres ver el XML lo mejor es algo así:
Código php:
Ver original Saludos. |
| |||
Respuesta: Como parsear XML enviado por get Gracias por tu ayuda GatorV. El echo del $_GET['variable'] solo lo hacia para para ver el contenido pero cuando quiero parsearlo el xml usando el simpleXML, como vos me indicaste, me tira varios errores. Si ese mismo xml que mando por get lo levanto de un archivo no hay problema. Código PHP: Última edición por Juampi J. Parada; 10/11/2008 a las 10:25 |
| |||
Respuesta: Como parsear XML enviado por get Gracias GatorV El problema es que cuando hago el urldecode($_REQUEST['variable']) , este me devuelve el xml completo pero me agrega una barra invertida \ <?xml version=\"1.0\" encoding=\"UTF-8\" ?><Pedidos><canttotal>2</canttotal><ped... y creo que por eso despues cuando se lo mando a simplexml_load_string($xmlstr) me tira error. Código PHP: Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : String not started expecting ' or " in C:\wamp\www\....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version=\"1.0\" encoding=\"UTF-8\" ?><Pedidos><canttotal>2</canttotal><ped in C:\wamp\www\.....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in C:\wamp\www\.....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Malformed declaration expecting version in C:\wamp\www\.....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version=\"1.0\" encoding=\"UTF-8\" ?><Pedidos><canttotal>2</canttotal><ped in C:\wamp\www\....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in C:\wamp\www\GeMovil_WebService\xml\ejemplo_simpleX ML\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Blank needed here in C:\wamp\www\.....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version=\"1.0\" encoding=\"UTF-8\" ?><Pedidos><canttotal>2</canttotal><ped in C:\wamp\www\.....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in C:\wamp\www\..........\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : parsing XML declaration: '?>' expected in C:\wamp\www\........\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version=\"1.0\" encoding=\"UTF-8\" ?><Pedidos><canttotal>2</canttotal><ped in C:\wamp\www\....\parseaXML2.php on line 25 Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in C:\wamp\www\.....parseaXML2.php on line 25 |