MarkerCluster en Google Maps

No hay comentarios

El MarkerCluster es una biblioteca que forma parte de las utilidades de Google Maps que aplica clustering basado en grids para una colección de marcadores. Esta librería funciona iterando los marcadores y cada marcador se suma a un grupo más cercano si está dentro de un mínimo de pixeles.

Consideremos la siguiente imagen en donde tenemos un conjunto de marcas a las cuales se les aplicará el algoritmo de cluster de la librería de Google Maps.

 Marcas Cluster

Continue reading…

Generar XML por medio de una consulta en PHP y MYSQL

No hay comentarios

En esta ocasión publicare un código para convertir en un archivo XML la información recuperada de una base de datos. El código permite agregar las columnas en nodos y mostrar el contenido de cada fila. Muchas de las veces es mucho mas sencillo  trabajar con archivos XML ya que muchas aplicaciones de terceros solicitan la información en este tipo de documentos. A continuación presento el código:

<?php  

$username="usuario";
$password="password";
$database="base_datos";

$dom = new DOMDocument("1.0");
$node = $dom->createElement("Datos");
$parnode = $dom->appendChild($node); 

// Opens a connection to a MySQL server

$connection=mysql_connect (localhost, $username, $password);
if (!$connection) {  die('Not connected : ' . mysql_error());} 

// Set the active MySQL database

$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
  die ('Can\'t use db : ' . mysql_error());
} 

// Select all the rows in the markers table

$query = "SELECT * FROM datos";
$result = mysql_query($query);
if (!$result) {  
  die('Invalid query: ' . mysql_error());
} 

header("Content-type: text/xml"); 

// Iterate through the rows, adding XML nodes for each

while ($row = @mysql_fetch_assoc($result)){  
  // ADD TO XML DOCUMENT NODE  
  $node = $dom->createElement("Dato");  
  $newnode = $parnode->appendChild($node); 
  $newnode->setAttribute("nombre",$row['nombre']);
  $newnode->setAttribute("ap_paterno", $row['ap_paterno']); 
  $newnode->setAttribute("ap_materno",$row['ap_materno']);

} 

echo $dom->saveXML();

?>

Este código me generará un archivo XML como el siguiente:

<Datos>
 <Dato nombre="Luis" ap_paterno="Hernandez" ap_materno="Villaseñor" />
 <Dato nombre="Juan" ap_paterno="Perez" ap_materno="Gonzalez" />
</Datos>

Espero y les sea de utilidad.