¿Carga ciudad / estado de SQL Server a Google Maps?
Estoy tratando de hacer una pequeña aplicación que lleve una ciudad y estado y geocodifique esa dirección a una ubicación lat / long. En este momento estoy utilizando la API de Google Map, ColdFusion y SQL Server. Básicamente, los campos de la ciudad y el estado están en una tabla de base de datos y quiero tomar esas ubicaciones y poner el marcador en un mapa de Google que muestre dónde están.
Este es mi código para hacer la geocodificación, y ver la fuente de la página muestra que está recorriendo correctamente mi consulta y colocando una ubicación ("Omaha, NE") en el campo de dirección, pero sin marcador o mapa para el caso , se muestra en la página:
function codeAddress() {
<cfloop query="GetLocations">
var address = document.getElementById(<cfoutput>#Trim(hometown)#,#Trim(state)#</cfoutput>).value;
if (geocoder) {
geocoder.geocode( {<cfoutput>#Trim(hometown)#,#Trim(state)#</cfoutput>: address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location,
title: <cfoutput>#Trim(hometown)#,#Trim(state)#</cfoutput>
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
</cfloop> }
Y aquí está el código para inicializar el mapa:
var geocoder;
var map;
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(42.4167,-90.4290);
var myOptions = {
zoom: 5,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: "Test"
});
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
Tengo un mapa de trabajo que usa lat / long que estaba codificado en la tabla de la base de datos, pero quiero poder usar la ciudad / estado y convertirlo en lat / long. ¿Alguna sugerencia o dirección? También es posible almacenar el lat / long en la base de datos, pero no sé cómo hacerlo dentro de SQL.