Clase PHP ADODB XML

  • Por
Clase PHP que nos permite pasar los datos de una tabla SQL a un archivo XML y viceversa.
 
Antes de comenzar a ver esta clase, lo suyo es que mencionemos al autor de esta clase PHP para el manejo de datos SQL con XML. Se trata de Olavo Alexandrino, que nos ha dejado un fantástico aporte a toda la comunidad de desarrolladores en PHP.

Sin más preámbulos, vamos a ver qué necesitamos para poder pasar de SQL a XML en PHP sin mucho esfuerzo.

Lo primero que vamos a hacer es descargarnos los siguientes archivos de la página de PHPClasses:

  • class.ADODB_XML.php
  • class.xml.php
  • connection.php
Con estos tres archivos tenemos lo básico para poder trabajar. Los dos primeros son la clase que nos ofrece Olavo. El tercero (connection.php) es un archivo que conecta con nuestra base de datos mediante adodb.

Una vez que tenemos cargados en nuestro servidor estos tres archivos, abrimos el de conexión y cambiamos los datos de conexión.

Si os fijáis, antes de hacer la conexión incluye un archivo llamado adodb.inc.php. Sin él no funcionará nuestra conexión adodb. Si no lo tenéis, podéis descargarlo desde el siguiente enlace.

Descargáis la carpeta completa y ponéis la ruta hacia el archivo en el include del archivo donde están los datos de conexión a nuestra base de datos.

Bien, con esto tenemos preparada la clase de PHP para que funcione correctamente.
Si nos diera algún fallo, revisamos los pasos mencionados anteriormente y comprobamos bien las rutas de los "require_once" y el include.

Ahora nos queda construir los dos archivos, uno que nos pase los datos SQL al archivo XML y otro que haga lo contrario, por ejemplo:

Para que nos pase los datos del SQL a un XML, tan solo tenemos que crear un archivo PHP con el siguiente código:

<?php
require_once('connection.php');
require_once('class.ADODB_XML.php');

$adodbXML = new ADODB_XML("1.0", "ISO-8859-1");
$adodbXML->ConvertToXML(&$objConnection, "SQL", "archivo.xml");
?>

Si analizamos este código, vemos que simplemente añadimos la clase mediante los require, "instanciamos" el objeto ADODB_XML y por último le pasamos unos parámetros (conexión, sentencia SQL, archivo XML a generar) para que realice ese volcado del contenido de la tabla en el archivo XML.

Si quisiéramos pasar los datos de un archivo XML a una tabla SQL, el código del ejemplo sería el siguiente:

<?php
require_once('connection.php');
require_once('class.ADODB_XML.php');


$adodbXML = new ADODB_XML("1.0", "ISO-8859-1");
$adodbXML->InsertIntoDB(&$objConnection, "usersxml.xml", "user");
?>

Sólo cambia la última línea a la que le pasamos como parámetros la conexión, el archivo XML que contiene los datos y el nombre de la tabla donde queremos volcarlos.

Es importante tener en cuenta que esta tabla tiene que estar ya creada y con los campos ordenados de la misma forma que aparecen en el XML.

Si queréis conocer mas datos sobre el autor y la clase podéis entrar en la página de PHPClasses.