Решил тут поставить гугл-карту, чтобы каждый человек мог добавить свои координаты на ней. Но столкнулся с следующей проблемой:
Code
Method Not Allowed
The requested method POST is not allowed for the URL /index.html.
Apache/1.3.39 Server at wiizardy.ru Port 80
Вот исходный код: (проблемные участки, на мой взгляд, выделены цветом)
Quote
<script>
if (top.location != location) {
top.location.href = document.location.href ;
}
var myKey = 'ABQIAAAAf9ilwkgXKl-nc1aSqLHloRS5K8YNV3rzs0M4U0MaNhoZF3aCaBSiDEeHvLobrKNuOa3J75BJl_NJjA';
var scriptTag = '<' + 'script src="http://maps.google.com/maps?file=api&v=2&key=' + myKey + '">'+'<'+'/script>';
document.write(scriptTag);
</script>
<script type="text/javascript">
var mArray = Array();
var map;
var centerPoint = new GLatLng(40.078071,-101.689453);
function load() {
doLoad();
mArray.push('59.19452122;39.86574233;ALLiGaToR')
mArray.push('47.04772712;28.80374908;Leonis')
mArray.push('42.90816007;47.54882812;Руслан')
mArray.push('46.47593582;30.73081970;New point')
mArray.push('46.47593582;30.73081970;New point')
mArray.push('46.25584682;30.49804688;Zak')
mArray.push('48.81429635;24.53424633;BOB')
mArray.push('59.97700549;30.23437500;New point')
mArray.push('55.97379821;37.52929688;New point')
mArray.push('56.36525014;43.94531250;New point')
mArray.push('45.52174390;24.60937500;New point')
mArray.push('52.27492937;76.97015047;HardWareMan')
mArray.push('59.99122266;30.31889677;Deathless')
mArray.push('59.97700549;30.23437500;paflik6')
mArray.push('54.91356429;33.31119597;12')
mArray.push('48.77429274;44.49325562;Andre')
mArray.push('52.26059305;31.01715088;stier')
addMarkers();
}
function doLoad() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setCenter(centerPoint, 7);
map.addControl(new GScaleControl());
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
GEvent.addListener(map, 'click', mapClick);
}
}
function addMarkers() {
if (mArray.length) {
var bounds = new GLatLngBounds();
for (n=0 ; n < mArray.length ; n++ ) {
var mData = mArray[n].split(';');
var point = new GLatLng(mData[0],mData[1]);
bounds.extend(point);
var marker = createMarker(point, mData[2]);
map.addOverlay(marker);
}
map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));
}
}
function createMarker(point, title) {
var marker = new GMarker(point,{title:title});
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml('<div style="width:250px;">' + title + '<hr>Lat: ' + point.y + '<br>Lon: ' + point.x + '</div>');
});
return marker;
}
function mapClick(marker, point) {
if (!marker) {
oLat = document.getElementById("lat");
oLat.value = point.y;
oLon = document.getElementById("lon");
oLon.value = point.x;
// oDesc = document.getElementById("desc");
// oDesc.value = 'New point';
}
}
</script>
</head>
<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 700px; height: 500px"></div>
<div id="formDiv">
<table cellspacing="0" cellpadding="2">
<form method="POST">
<tr><td colspan="2" align="center">Добавить координаты (кликни по карте)</td></tr>
<tr><td>Широта</td><td><input id="lat" name="lat"> Образец: 40.0</td></tr>
<tr><td>Долгота</td><td><input id="lon" name="lon"> Образец: -101.5</td></tr>
<tr><td>Описание</td><td><input id="desc" name="desc"> Образец: Mario. Впиши своё имя!</td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="Добавить" *тут как я понял должно быть что-нибудь вроде: onclick="createMarker(lat, lon, desc)" > </td></tr>
</form></table></div></body></html>
То есть, данные введенные в форму (долгота, широта и дескрипшн) должны добавиться в этом отрывке
Code
function load() {
doLoad();
mArray.push('59.19452122;39.86574233;ALLiGaToR')
mArray.push('47.04772712;28.80374908;Leonis')
mArray.push('42.90816007;47.54882812;Руслан')
mArray.push('46.47593582;30.73081970;New point')
mArray.push('46.47593582;30.73081970;New point')
mArray.push('46.25584682;30.49804688;Zak')
mArray.push('48.81429635;24.53424633;BOB')
mArray.push('59.97700549;30.23437500;New point')
mArray.push('55.97379821;37.52929688;New point')
mArray.push('56.36525014;43.94531250;New point')
mArray.push('45.52174390;24.60937500;New point')
mArray.push('52.27492937;76.97015047;HardWareMan')
mArray.push('59.99122266;30.31889677;Deathless')
mArray.push('59.97700549;30.23437500;paflik6')
mArray.push('54.91356429;33.31119597;12')
mArray.push('48.77429274;44.49325562;Andre')
mArray.push('52.26059305;31.01715088;stier')
addMarkers();
}
в таком виде: mArray.push('широта;долгота;имя или описание')
Надеюсь на вашу помощь