SQLクエリがあり、mysql_fetch_arrayを使用して結果をwhileループに渡し、テーブルを出力しています。各行に同じ情報が含まれているので、マップ上にマーカーを作成していると思います。マップを作成しているとき、問題は、マップが常にテーブルの最後の行(Cマーカー)の中央に配置されることです。これの代わりに、マップをマーカーA(テーブルの最初の行)の中央に配置します。配列を逆にしようとしていましたが、機能しません。
<?php
while($info4 = mysql_fetch_array($result4))
{
?>
// A function to create the marker and set up the event window
function createMarker(point, name, html, flag)
{
//set the icon of the marker
var letteredIcon = new GIcon(baseIcon);
letteredIcon.image = "markers/"+flag+".png";
// Set up our GMarkerOptions object
markerOptions = { icon:letteredIcon };
var marker = new GMarker(point, markerOptions);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(html);
});
// save the info we need to use later for the side_bar
gmarkers.push(marker);
// add a line to the side_bar html
side_bar_html += '<td><a href="javascript:myclick(' + (gmarkers.length-1) + ')">' + name + '<\/a><\/td>';
return marker;
}
// add the points
map.setCenter(new GLatLng(<?php print $info4['placeY'];?>,<?php print $info4['placeX'];?>), 14);
var point = new GLatLng(<?php print $info4['placeY'];?>,<?php print $info4['placeX'];?>);
var marker = createMarker(point,"<?php print utf8_decode($info4['placeName']);?>","<?php print utf8_decode($info4['placeName'])."<br>".utf8_decode($info4['placeAddress'])."<br>".utf8_decode($info4['placeDistrict']);?>","<?=$flag;?>")
map.addOverlay(marker);
<?php $flag=$flag+1;
} ?>
例:表:
観光オデオン
B潮汐の観光現象
C観光レッドハウス
この例では、地図は私が見たいAマーカーではなくCマーカーを中心にしています。