Ustalanie położenia na własnej stronie internetowej

Bez owijania w bawełnę.
Tydzień się już męczę i nie potrafię rozwiązać problemu.
Chcę żeby użytkownicy mojej strony którą robię mieli możliwość wskazania na mapie wybranych miejsc za pomocą pinezki a skrypt na mojej stronie wpisuje wybrane polozenie do bazy sql.
Chciałem żeby to wyglądało ekstremalnie prosto czyli IFRAME z załadowaną samą mapą bez nieczego więcej i na środku pinezka.
Przesuwając mapę ustalają położenie a strona www jakimś skryptem zczytuje długość i szerokość geograficzną z adresu url.
Przykład jak to ma wyglądać → http://dd102.pro-linuxpl.com/mapa/forum_openstreetmap.php
Reasumując to chce zrobić to samo co przypinanie pinezki na stronie głównej openstreetamap tylko u siebie na stronce w IFRAME.
Na ten moment zrobiłem skrypt php do którego użytkownik musi wkleić link z wcześniej znalezionej lokalizacji (z włączoną pinezką)
a on wyciąga z adresu długość i szerokość geograficzną i ładuje do ramki odpowiednią mapę …ale to jest wiocha na całego :slight_smile:
http://dd102.pro-linuxpl.com/mapa/forum_open.php

Kod pierwszego linku:

<html>
<head>
</head>
<body>
<iframe id="frame" width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.openstreetmap.org/export/embed.html?bbox=20.982331037521362%2C52.218256335386144%2C20.992941856384277%2C52.22296240972006&layer=mapnik&marker=52.22060943488999%2C20.98763644695282" style="border: 1px solid black"></iframe>
<button onclick="alert(document.getElementById('frame').src)">odczytaj adres</button>
</body>
</html>

Kod drugiego linku:


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<?php
$geo_adres=$_POST['geo_adres'];
echo'<form action="'.$PHP_SELF.'" method="post">
Name: <input type="text" name="geo_adres" value="'.$geo_adres.'" size="90">
<input type="submit">
</form>';

$geo_adres=$_POST['geo_adres']; 
if($geo_adres){

	$wspolrzedne=explode("/", $geo_adres);
	$wynik = count ($wspolrzedne);
	$lon=$wspolrzedne[$wynik-1];
	$lat=$wspolrzedne[$wynik-2];
	$lon_min=$lon-0.007;
	$lon_max=$lon+0.007;
	$lat_min=$lat-0.007;
	$lat_max=$lat+0.007;
	
	if (is_numeric($lon) and is_numeric($lat)){
	echo "lon=$lon<br>";
	echo "lat=$lat<br>";
	echo'<iframe  id="frame" width="800" height="600" src="http://www.openstreetmap.org/export/embed.html?bbox='.$lon_min.'%2C'.$lat_min.'%2C'.$lon_max.'%2C'.$lat_max.'&layer=mapnik&marker='.$lat.'%2C'.$lon.'" style="border: 1px solid black"></iframe>';
	}else{
	echo"<h1>coś żeś nawaluł</h1>";
	}
}	

?>
</body>
</html>

Pytanie brzmi: jak załadować do ramki samą mapę z nieruchomą pinezką na środku i odczytać wpółrzędne geograficzne konkretnego ustawienia mapy.
Panowie myślę że rozwiązanie tego tematu będzie pomocne dla bardzo wielu webmasterów, pomóżcie.
ps.
jak widać po kodzie nie jestem programistą tak że lakoniczne podpowiedzi nie są dla mnie pomocą.
ps.ps. z open layer nie kumam, wogóle mi się nie chcą ładować ich przykłady, coś tam jest nawalone, bo skoro mi to nie działa to jest duże prawdopodobieństwo że innym tez się będzie wywalać, mam na mysli to http://openlayers.org/dev/examples/ (chyba że nie ma innego rozwiązania ale to ostateczność)

Coś mi się kojarzy jak przez mgłę, że openlayers są be, a leaflet cacy; ale oczywiście mogę się mylić. Może niech się wypowie ktoś, kto używał obu.

Nie wiem który jest lepszy (openlayers czy leaflet), ale przez przypadek wiem jak uruchamiać przykłady openlayers. Musisz mieć skrypt OpenLayers.js i plik theme, do których odpowiednio odwołuje się Twój kod html. Przykłady najlepiej uruchamiać pobierając całość z http://openlayers.org/download/. Tam będą (w katalogu examples) przykłady z odpowiednimi dowiązaniami.

Nieruchomy marker w leaflet można np zrobić tak:
http://jsfiddle.net/miklobit/8Sx3x/