Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/01/2013, 09:12
vani18
 
Fecha de Ingreso: junio-2010
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 5
xml a php duda numero 32

hola, todos ven los simple que es google maps, pero aun tengo dudas...


1) de la base de datos extraigo determinado datos.
2)por algun metodo paso los datos a xml, algunos dentro del mismo nodo, colocan sus atributos, los valores,

otros xml, por cada atributo crean un subnodo..

3)algunos permiten guardar el XML, recien veo eso, por ejemplo seria que una funcion php. haga todo de extraer crear, y si devuelve 1, ahi lee el archivo por que podria pasar que quiera leer y no exista aun el XML,
entonces cuando tenga para leer un XML, acceder a los datos, LEERA UN ARCHIVO XML Y NO UN PHP... asi es como digo??


como aca que lo guarda

Código PHP:

    <?php
    $con 
mysql_connect("localhost","usuario","password");
    
//nos conectamos a nuestra base de datos
    
if (!$con)
    {
    die(
'Could not connect: ' mysql_error());
    
//verificamos que los datos sean correctos
    
}
    
// Seleccionamos la base de datos a utilizar
    
mysql_select_db("odk_prod"$con) or die ("error");
    
$result mysql_query("SELECT  campo_tabla, campo_tabla2 ... * from Nombre_tabla") or die ("error");
    
//realizamos la consulta a nuestra base de datos
    
$test = array(); //creamos una variable de tipo array
    
$row_cnt mysql_num_rows($result); //contamos el numero de filas devueltas por la consulta
    
while($row mysql_fetch_array($result)) //recorremos todos las filas de nuestra consulta para leer los resultador
    
{
    
//ahora vamos a llenar el array con la información de la base de datos, necesitamos asignar un campo dentro del array para cada uno de los campos de la tabla
    
$test [] = array ('campo_array'=>$row['campo_tabla'], 'campo_array2'=> $row['campo_tabla2']); } //ya que tenemos lleno el array vamos a utilizarlo para generar nuestro archivo XML, usando la librería DOMDocument
    //iniciamos la función DOMDocument
    
$doc = new DOMDocument(); $doc->formatOutput true//Acá creamos el primer elemento de nuestro xml llamado results, este elemento tiene un atributo llamado count, q devuelve el numero de registros que va a contener, esto lo obtenemos del numero de filas devueltas por la consulta
    
$r $doc->createElement"results" ); $r->setAttribute("count",$row_cnt); //abrimos la etiqueta results, q será la principal
    
$doc->appendChild$r );
    foreach( 
$test as $arraytest ) { //iniciamos a recorrer el array
    //creamos la etiqueta result, q dentro contendra la información del campo1 y campo2 de la base de datos
    
$b $doc->createElement"data" ); $campo1 $doc->createElement "campo1" );
    
$campo1->appendChild$doc->createTextNode$arraytest['campo_array'] ) );
    
$b->appendChild$campo1 );
    
$campo2 $doc->createElement "campo2" );
    
$campo2->appendChild$doc->createTextNode$arraytest['campo_array2'] ) ); //cerramos la etiqueta data
    
$b->appendChild$campo2 ); //cerramos la etiqueta resulsts
    
$r->appendChild$b ); } //ponemos el nombre de nuestro archivo
    
xml $doc->save("nombre_doc.xml"); //cerramos la conexión a la base de datos
    
mysql_close($con); ?>
la otra es que genera un xml, lo muestra, pero no lo llega a guardar, como XML...
cuando leo el archivo para acceder a sus datos, LEE un PHP, que muestra XML,


es asi como digo o me equivoco??