Google Maps API を使用して、マーカーとして使用できる緯度と経度の配列 (都市の mySQL データベースから) を作成しようとしています。
PHP で都市を動的に取得し、javascript でジオコーディングする方法がわかりません。
これは私がこれまでに持っているものです。ジオコーダーの行が間違っていることは知っていますが、それをどのように操作するかはわかりません。アドバイスや解決策は非常に役に立ちます。
var geocoder = google.maps.Geocoder();
var markers = [
<?php
//orgnize fans by city
$query = "SELECT city, state, COUNT(*) fans FROM users GROUP BY city ORDER BY fans DESC";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
//pulls the city, state code from the database and stores it as a string in $address
$address = '"' . $row['city'] . ", " . $row['state'] . '"';
// "$row['city'].", ".$row['state']";
geocoder.getLatLng($address, function(point) {
$latitude = point.y;
$longitude = point.x;
});
echo "{ lat: \"".$latitude.", lng: ".$longitude.", name: "'"'.$row['city'].", ".$row['state'].'"'"},\n ";
echo "<br/>";
}
?>
];
//var locationNameArray = ['Portland','Seattle','Los Angeles','San Diego','Las Vegas'];
// Create the markers ad infowindows.
for (index in markers) addMarker(markers[index]);
function addMarker(data) {
// Create the marker
var marker = new google.maps.Marker({
position: new google.maps.LatLng(data.lat, data.lng),
map: map,
title: data.name
});