Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] problemas con google maps

Estas en el tema de problemas con google maps en el foro de Javascript en Foros del Web. Buenas tardes. Les planteo mi problema , estoy tratando de mostrar varios registros que consulto a una base de datos. ahora transforme la direccion en ...
  #1 (permalink)  
Antiguo 06/02/2013, 15:53
 
Fecha de Ingreso: febrero-2013
Ubicación: Tuluá
Mensajes: 5
Antigüedad: 11 años, 2 meses
Puntos: 0
Pregunta problemas con google maps

Buenas tardes.

Les planteo mi problema , estoy tratando de mostrar varios registros que consulto a una base de datos. ahora transforme la direccion en latitud y longitud (hasta aqui no hay problema). el problema radica en que me pinta solo el ultimo registro de la bd en la pagina .

Metodo para seleccionar todos los registros de la tabla personas
Código:
public function obtener_personas()
    {
        $sql="select * from personas";
        // echo $sql;
        $res=mysql_query($sql,self::con());
        while ($reg=mysql_fetch_assoc($res))
        {
            $this->user[]=$reg;
        }
            return $this->user;
    }
Prueba.php

Código:
<?php 
require_once("class/class.php");
$tra=new Trabajo();
$reg=$tra->obtener_personas();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Codificaci&oacute;n geogr&aacute;fica</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=true"></script>
</script>
</head>
<body>
  <?php  
    for ($i=0; $i < count($reg); $i++)
      { 
                        $doc=new DOMDocument();
                        $direccion=$reg[$i]["direccion"]." ".$reg[$i]["pais"];
                        // echo $direccion;
                        $xml="http://maps.googleapis.com/maps/api/geocode/xml?address=".$direccion."&sensor=true";
                        // echo $xml;
                        $doc->load($xml);
                        $persona=$doc->getElementsByTagName("result");
                        foreach ($persona as $p)
                            {
                              $latitud=$p->getElementsByTagName("lat");
                              $latitud=$latitud->item(0)->nodeValue;
                              $longitud=$p->getElementsByTagName("lng");
                              $longitud=$longitud->item(0)->nodeValue;
                            }

                  echo "<script>
                  $(document).ready(function() {cargar_mapa(); });
                     function cargar_mapa()
                        {
                              var myOptions = {
                                                scaleControl: true,
                                                center: new google.maps.LatLng($latitud,$longitud),
                                                zoom: 15,
                                                mapTypeId: google.maps.MapTypeId.ROADMAP
                                             }; 
                      var map = new google.maps.Map($('.map_canvas').get(0),
                                myOptions);
                    
                      var marker = new google.maps.Marker({
                                                             map: map,
                                                             title: '$direccion',
                                                             position: map.getCenter()
                                                          });
                              var infowindow = new google.maps.InfoWindow();
                              infowindow.setContent('<b>Mapa</b>');
                              google.maps.event.addListener(marker, 'click', function()
                               {
                                  infowindow.open(map, marker);
                               });
                          }
                           google.maps.event.addDomListener(window, 'load', cargar_mapa); 


                        
                 </script>";
                 echo "mi latitud es : ".$latitud."</br>";
                 echo   "mi longitud es : ".$longitud."</br>";
                 echo $reg[$i]["nombre"]."<br>";
                echo $reg[$i]["telefono"]."<br>";
                echo $reg[$i]["correo"]."<br>"; 
                echo $reg[$i]["direccion"]."<br>"; 
                echo $direccion=$reg[$i]["direccion"]." ,".$reg[$i]["pais"];
                echo "<div class='map_canvas' style='width:400px; height:300px;'>1</div>";
                echo "<hr>";
       }
 ?>
 

<?php
    
  # code...

?>

</body>
</html>
Y esta es la base de datos

Código:
CREATE TABLE `personas` (
  `id` int(11) NOT NULL auto_increment,
  `nombre` varchar(100) collate utf8_spanish_ci NOT NULL,
  `telefono` varchar(50) collate utf8_spanish_ci NOT NULL,
  `correo` varchar(100) collate utf8_spanish_ci NOT NULL,
  `direccion` varchar(200) collate utf8_spanish_ci NOT NULL,
  `pais` varchar(100) collate utf8_spanish_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=5 ;

-- 
-- Volcar la base de datos para la tabla `personas`
-- 

INSERT INTO `personas` VALUES (1, 'yo andres', '87987', '[email protected]', 'Calle 18 20-18 tulua', 'colombia');
INSERT INTO `personas` VALUES (2, 'critina solis', '89798', '[email protected]', 'Calle 25 20-18 tulua ', 'colombia');
INSERT INTO `personas` VALUES (4, 'leidy', '3128534720', '[email protected]', 'Calle 25 17-18 tulua', 'colombia');
Gracias por su atencion

Última edición por aprendizt; 06/02/2013 a las 15:57 Razón: me falto informacion

Etiquetas: ayuda-general, google, javascript+php, maps, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:04.