<ole>
Løsningen er en kombination af JavaScript og PHP. Først må du hente adressen i databasen med PHP - og derefter skrive den ind i et JavaScript på siden.
Herefter kan JS hente koordinaterne fra Googles geocoder med et Ajax kald:
<script type="text/javascript">
var sAddr = "Vesterbrogade 1, 1550 København"; // Adresse, indskrevet med PHP
var sUrl = "
http://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=" + encodeURIComponent(sAddr);
var oXHR = new XMLHttpRequest();
oXHR.open("GET", sUrl, true);
oXHR.onreadystatechange = function() {
if (this.readyState<4) return;
alert(this.responseText);
}
oXHR.send();
</script>
Responsen indeholder et JSON-objekt i stil med:
{ "results" : [ { "address_components" : [ { "long_name" : "1", "short_name" : "1", "types" : [ "street_number" ] }, { "long_name" : "Vesterbrogade", "short_name" : "Vesterbrogade", "types" : [ "route" ] }, { "long_name" : "Nyrops", "short_name" : "Nyrops", "types" : [ "sublocality", "political" ] }, { "long_name" : "Indre By", "short_name" : "Indre By", "types" : [ "sublocality", "political" ] }, { "long_name" : "København", "short_name" : "KBH", "types" : [ "locality", "political" ] }, { "long_name" : "København", "short_name" : "København", "types" : [ "administrative_area_level_2", "political" ] }, { "long_name" : "Hovedstaden", "short_name" : "Hovedstaden", "types" : [ "administrative_area_level_1", "political" ] }, { "long_name" : "Danmark", "short_name" : "DK", "types" : [ "country", "political" ] }, { "long_name" : "1550", "short_name" : "1550", "types" : [ "postal_code" ] } ], "formatted_address" : "Vesterbrogade 1, 1550 København, Danmark", "geometry" : { "bounds" : { "northeast" : { "lat" : 55.67528560, "lng" : 12.56641710 }, "southwest" : { "lat" : 55.67527480, "lng" : 12.56640470 } }, "location" : { "lat" : 55.67527480, "lng" : 12.56641710 }, "location_type" : "RANGE_INTERPOLATED", "viewport" : { "northeast" : { "lat" : 55.67662918029149, "lng" : 12.56775988029150 }, "southwest" : { "lat" : 55.67393121970849, "lng" : 12.56506191970850 } } }, "types" : [ "street_address" ] } ], "status" : "OK"}
Her kan du hente koordinaterne og indsætte en marker på dit GoogleMap på helt sædvanlig måde.
/mvh
</bole>