Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/10/2011, 06:17
Avatar de intergus
intergus
 
Fecha de Ingreso: mayo-2007
Mensajes: 126
Antigüedad: 17 años
Puntos: 3
No genera el xml

Me estoy voliviendo loco y es sin duda por desconocimiento del xml

El caso es que necesito generar un xml cada vez que el usuario cambia un marcador de sitio en un google map

Toda la parte del ajax está solucionado pues de hecho, imprimo los nuevos datos a la derecha del mapa.

En el mismo fichero que lee el ajax para extraer los datos de BD, quiero aprovechar para generar un xml, con el que luego pintar los marcadores en el mapa y poder incluso hacer más cosas.

Bueno, esto era para situaros, el caso es que el codigo no genera el xml y tampoco se como darle un nombre, pues se debería generar un fichero físico ¿no?

Si podeis ayudarme a ver la luz...

<?
header("Content-type:text/xml");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">

<?
include("variables.php");
$lat = $_GET['lt'];

// empieza el fichero XML
$dom = new DOMDocument('1.0', 'utf-8');
$root = $dom->createElement("markers");

conectar(); // conecta con la base de datos y lo hace bien
$sql = "SELECT * from tabla where latitud = " . $lat;
$consulta=mysql_query($sql);

WHILE ($fila=mysql_fetch_array($consulta)){

// ADD TO XML DOCUMENT NODE
$marker = $dom->createElement("marker");

$lugar = $dom->createElement('lugar');
$lugar_texto = $dom->createTextNode($fila->lugar);
$lugar->appendChild($lugar_texto);

$latitud = $dom->createElement('latitud');
$latitud_texto = $dom->createTextNode($fila->latitud);
$latitud->appendChild($latitud_texto);

$longitud = $dom->createElement('longitud');
$longitud_texto = $dom->createTextNode($fila->longitud);
$longitud->appendChild($longitud_texto);

$id = $dom->createElement('id');
$id_texto = $dom->createTextNode($fila->id);
$id->appendChild($id_texto);

$marker->appendChild($lugar);
$marker->appendChild($latitud);
$marker->appendChild($longitud);
$marker->appendChild($id);

$root->appendChild($marker);

}
$dom->appendChild($root);
echo $dom->saveXML();
?>