entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Google maps- obtener mapa por una dirección

aludos

Tengo la siguente problema, necesito utilizar la api de google maps ya sea por javascript. Pero necesito traer un mapa con las coicidencias o lugares cercanos a una busqueda de dirección, soy muy novato usando la api de google entonces no se si pueda o no.

lo que tengo es el id de la ciudad sacado de google places autocomplete, el nombre de la ciudad y obviamente el pais.

ejemplo

https://maps.google.es/maps?q=Calle+105A+%23+14-92,+Bogot%C3%A1+-+Cundinamarca,+Colombia&hl=es-419&ie=UTF8&sll=4.594434,-74.104757&sspn=0.025538,0.042272&oq=Calle+105A+14-92,+Bogot%C3%A1+-+Cundinamarca,+Colombia&hnear=Calle+105A+%23+14-92,+Bogot%C3%A1,+Cundinamarca,+Colombia&t=m&z=17

de esa parte necesito capturar latidud y longitud del mapa y guardar eso en la base de datos.

Ademas otra duda sera necesario integrar el api key de la aplicación web al sistema.

el sistema esta desarrollado en Ruby on rails, pero la integración se va hacer en javascript.

Gracias por su colaboración.

2 Respuestas

3votos

myfuturros Puntos500
function latlng($direccion){
        $a = array('á', 'é', 'í', 'ó', 'ú', 'ñ', ' ');
        $b = array('a', 'e', 'i', 'o', 'u', 'n', '+');
        $direccion = str_ireplace($a, $b, $direccion);
        $req = "http://maps.googleapis.com/maps/api/geocode/json?address=$direccion&sensor=false";
        $cGoogle = curl_init($req);
        curl_setopt($cGoogle,CURLOPT_RETURNTRANSFER, TRUE);
        $gGoogle = curl_exec($cGoogle);
        $getGoogle = json_decode($gGoogle,true);
        if($getGoogle["status"] == "OK"){
            $result = array(
                "lat" => $getGoogle["results"][0]["geometry"]["location"]["lat"],
                "lng" => $getGoogle["results"][0]["geometry"]["location"]["lng"],
                "type" => $getGoogle["results"][0]["geometry"]["location_type"]
            );
        }else{
            $result = array(
                "lat" => "0",
                "lng" => "0",
                "type" => ""
            );
        }
        return $result;
    }

Espero y te sirva

3votos

En la documentación de Google está bastante bien explicado, sólo tienes que hacer una petición a una URL concreta y la respuesta te dirá qué latitud y longitud tiene la dirección que querías buscar, o si no la encuentra, te devolverá un código de error. Leetela y si sigues teniendo dudas vuelves a escribir.

Geocoding Google Maps

Saludos.

0voto

nmenag comentado

Gracias por la respuesta, ya lo habia encontrado pero en mi busqueda encontré este plugin de javascript http://hpneo.github.io/gmaps/ funciona perfecto, pero en Rails no me esta funcionando. Saludos.

0voto

Leonardo-Tadei comentado

Hola nmenag,

como Ruby funciona del lado del servidor y JavaScript funciona del lado del cliente, si no te funciona la biblioteca gmaps debe ser porque tu código Ruby/Rails no está enviando los archivos JS al cliente o no estás emitiendo el HTML necesario para que funcione.

Podrías poner en otra pregunta una versión estática de la página que genera el mapa (HTML + JS) así vemos qué puede ser.

Saludos!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta