Pasar resultado MySQL a archivo XML o E4X para AJAX
Julio 16th, 2009 2 Comments »
Gente, acá les acerco una función de mi autoría que convierte un resultado de consulta MySQL en un archivo XML, veamos un ejemplo:
Si tuvieramos la siguiente tabla usuarios:
| id | nombre | |
|
|
|
|
| 1 | Pablo | pablo@mail.com |
| 2 | Marcos | marcos@mail.com |
Con la consulta SQL dada por:
SELECT * FROM usuarios;
Y queremos obtener el siguiente archivo XML:
<?xml version="1.0" encoding="UTF-8"?> <resultados> <item> <id>1</id> <nombre>Pablo</nombre> <mail>pablo@mail.com</mail> </item> <item> <id>2</id> <nombre>Marcos</nombre> <mail>marcos@mail.com</mail> </item>
Simplemente debemos ejecutar la siguiente instrucción en PHP:
<? require ('conexion.php'); require ('mysqlAXML-1.0.php'); header("Content-type: text/xml"); $consulta = "SELECT * FROM usuarios"; if (!$resultado = mysql_query($consulta)) die ("Error en '$consulta' <br />".mysql_error()); echo mysql_XML($resultado); ?>
O para obtener el resultado en formato E4X:
<? echo mysql_E4X($resultado); ?>
La sintaxis general es la siguiente:
<? mysql_XML($resultado, [ $nombreDoc='resultados', $nombreItem='item' ]); ?>
Pueden descargar el archivo ZIP con la libreria desde aquí: mysqlaxml-1.0