69 lines
2.7 KiB
HTML
69 lines
2.7 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
|
<title>Google Maps AJAX + mySQL/PHP Example</title>
|
|
<script src="http://maps.google.com/maps?file=api&v=2&key=AIzaSyA13hZb_mE3Fx3KPevCWrQPERPykhiTIIw"
|
|
type="text/javascript"></script>
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
|
|
var iconRed = new GIcon();
|
|
iconRed.image = 'http://labs.google.com/ridefinder/images/mm_20_red.png';
|
|
iconRed.shadow = 'http://labs.google.com/ridefinder/images/mm_20_shadow.png';
|
|
iconRed.iconSize = new GSize(12, 20);
|
|
iconRed.shadowSize = new GSize(22, 20);
|
|
iconRed.iconAnchor = new GPoint(6, 20);
|
|
iconRed.infoWindowAnchor = new GPoint(5, 1);
|
|
|
|
var customIcons = [];
|
|
customIcons["fitter"] = iconRed;
|
|
|
|
function load() {
|
|
if (GBrowserIsCompatible()) {
|
|
var map = new GMap2(document.getElementById("map"));
|
|
map.addControl(new GSmallMapControl());
|
|
map.addControl(new GMapTypeControl());
|
|
map.setCenter(new GLatLng(40, -100), 3);
|
|
|
|
// Change this depending on the name of your PHP file
|
|
GDownloadUrl("phpsqlajax_genxml2.php", function(data, responseCode) {
|
|
//alert ("loading...");
|
|
if(responseCode == 200) {
|
|
var xml = GXml.parse(data);
|
|
var markers = xml.documentElement.getElementsByTagName("marker");
|
|
//alert ("Number of markers: "+markers.length);
|
|
for (var i = 0; i < markers.length; i++) {
|
|
var name = markers[i].getAttribute("name");
|
|
var address = markers[i].getAttribute("address");
|
|
var type = markers[i].getAttribute("type");
|
|
var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
|
|
parseFloat(markers[i].getAttribute("lng")));
|
|
var marker = createMarker(point, name, address, type);
|
|
map.addOverlay(marker);
|
|
}
|
|
} else if(responseCode == -1) {
|
|
alert("Data request timed out. Please try later.");
|
|
} else {
|
|
alert("Request resulted in error. Check XML file is retrievable.");
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function createMarker(point, name, address, type) {
|
|
var marker = new GMarker(point, customIcons[type]);
|
|
var html = "<b>" + name + "</b> <br/>" + address;
|
|
GEvent.addListener(marker, 'click', function() {
|
|
marker.openInfoWindowHtml(html);
|
|
});
|
|
return marker;
|
|
}
|
|
//]]>
|
|
</script>
|
|
</head>
|
|
|
|
<body onload="load()" onunload="GUnload()">
|
|
<div id="map" style="width: 600px; height: 400px"></div>
|
|
</body>
|
|
</html> |