![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 22.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki problem - mianowicie nie wiem jak się do tego zabrać.... Mam bazę danych lokalizacji, np: LOKALIZACJA: id nazwa ulica nr_domu nr_mieszkania i chciałbym żeby na podstawie pól ulica, nr_domu,nr_mieszkania automatycznie tworzyła mi się mapa google maps z zaznaczonym adresem przekazanym poprzez powyższe zmienne. w bazie danych będzie znajdowało się np 30 różnych lokalizacji i chciałbym żeby dla każdej z nich tworzyła mi się oddzielna mapa. Takie coś jest zrealizowane np. na stronie Patrz tutaj klikając na Pokaż na mapie. Teoretycznie w Gmaps do tworzenia lokalizacji powinno podawać się współrzędne GLat i GLng jak to jest przekazane w kodzie poniżej dla przykładowej lokalizacji: Kod <script type="text/javascript"> //<![CDATA[ function load() { if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById("map")); map.addControl(new GSmallMapControl()); var MapTypes = map.getMapTypes(); MapTypes[0].getName= function() { return "Mapa";} MapTypes[1].getName = function() { return "Satelita";} MapTypes[2].getName = function() { return "Hybrydowa";} map.addControl(new GMapTypeControl()); map.enableContinuousZoom(); map.enableDoubleClickZoom(); map.setCenter(new GLatLng(52.053150229418684, 20.439698696136474), 16); var info='<div style="background-color: #fff; width: 240px; font-size: 11px; FONT-FAMILY: Verdana, Tahoma, Arial, Sans-Serif;"><B>Jakiś napis który wyświetlany jest w oknie</B><hr><img src="zdjęcie_adr"></div>'; var point = new GLatLng(52.0531487, 20.4397057); var marker = new GMarker(point); GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(info); }); map.addOverlay(marker); marker.openInfoWindowHtml(info); } } //]]> </script> Nie mam pojęcia jak na w/w stronie jest to zorganizowane, ale muszę takie coś zrobić. Czy mógłby mi ktoś pomóc? Z góry wielkie dzięki ![]()
Powód edycji: [Spawnm]: tag
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 66 Pomógł: 7 Dołączył: 17.12.2007 Ostrzeżenie: (0%) ![]() ![]() |
Tworzysz sobie funkcje w javascripcie która tworzy mapę a jako parametry podajesz dane wyciągnięte z bazy np ulica miasto itd
W funkcja ładnie wyświetli Ci mapkę wg wprowadzonych danych. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 22.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Taką funkcje mogę sobie stworzyć i podpisać, ale problem jest taki, że w bazie danych przechowuję wartości ulica, nr domu i nr mieszkania w postaci Stringów a do mapy dopisuje się współrzędne GLat i GLng. Dane te są generowane z podanego tekstowo adresu, ale raczej chyba nie mogę wpisać ich tak z palca do mapy. Czy mogę zamiast tych współrzędnych podawać po prostu adresy? Chyba nie i to jest w zasadzie podstawowy problem...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 66 Pomógł: 7 Dołączył: 17.12.2007 Ostrzeżenie: (0%) ![]() ![]() |
Tak można dodawać wg. ulic itp nie będę Ci pisał gotowej funkcji ale myślę, że ta strona Ci pomoże
http://gmapsapi.com/ |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 4 069 Pomógł: 497 Dołączył: 11.05.2007 Skąd: Warszawa ![]() |
Proszę dodać tag do tematu.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 22.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Napisałem ten post już jakiś czas temu, ale zabrałem się za coś innego i teraz dopiero mogłem powrócić do realizacji przedstawionego problemu. Baranek77 napisałeś, żebym zerknął na stronę http://gmapsapi.com/- zajrzałem i owszem wiem co powinienem zrobić, ale nie wiem do końca jak. Może mógłby mi ktoś pomóc. A więc tak... Mam wyciągnięte z bazy danych: miasto, ulica, numer - ,gdzie odpowiednio -m[0] - nazwa miasta, m[4] - ulica, m[6] - numer mieszkania. Oczywiście wszystko to jest zawarte w php. Teraz poza php wpisałem: CODE <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!--skrypty--> <script src='http://maps.google.com/maps?file=api&v=2&sensor=false&key=toMojKod' type='text/javascript'></script> </head> <body onload='mapaStart()' onunload='GUnload()'> <script type='text/javascript'> <!-- // zmienne globalne var geo; var mapa; function mapaStart() { if(GBrowserIsCompatible()) { mapa = new GMap2(document.getElementById("mapka"),{mapTypes: [G_NORMAL_MAP,G_SATELLITE_MAP,G_HYBRID_MAP]}); mapa.setCenter(new GLatLng(53.429805, 14.537883), 15); // kontrolki mapy mapa.addControl(new GLargeMapControl()); var typyMapy = mapa.getMapTypes(); typyMapy[0].getName= function() { return "Mapa";} typyMapy[1].getName = function() { return "Satelita";} typyMapy[2].getName = function() { return "Hybryda";} mapa.addControl(new GMapTypeControl()); mapa.addControl(new GOverviewMapControl()); mapa.addControl(new GScaleControl()); // nowy obiekt do geokodowania geo = new GClientGeocoder(); var adres='Żyrardów, 1 Maja 50'; geo.getLatLng(adres,function(punkt) { if (!punkt) { // jeśli punkt nie istnieje, to adres nie został znaleziony alert(adres + " nie został znaleziony!"); } else { // centrujemy na znalezionym punkcie mapa.setCenter(punkt, 15); // dodajemy w tym miejscu marker var ikona = new GIcon(); ikona.image='http://maps.google.com/mapfiles/kml/pal3/icon52.png'; ikona.shadow=''; ikona.iconSize=new GSize(32,32); ikona.iconAnchor=new GPoint(16,16); ikona.infoWindowAnchor=new GPoint(16,16); var marker = new GMarker(punkt,{icon: ikona, title: adres}); mapa.addOverlay(marker); // i otwieramy dymek z adresem marker.openInfoWindowHtml('<strong>Poszukiwany adres</strong><br />'+adres); } }); } } --> </script> <div id='mapka' style='width: 550px; height: 393px; border: 1px solid black; background: gray;'> <!-- tu będzie mapa --> </div> W linijce CODE var adres='Żyrardów, 1 Maja 50'; wpisany jest ręcznie adres do wyświetlania. To działa bez zarzutów, ale ja potrzebuję, żeby zamiast tego adresu wczytywane były zmienne z bazy, tj.m[0],m[4],m[6]. I z tym mam właśnie problem. Czy mógłby mi ktoś pomóc? Muszę powyższy kod zmienić na php i jakoś umieścić te zmienne. Z góry bardzo dziękuję za pomoc i proszę o możliwie szybkie odpowiedzi, albowiem zależy mi na tym, żeby zaczęło to działać. Jeszcze raz dzięki Ten post edytował filipe 9.09.2009, 11:35:21 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
To może ja Ci podpowiem...
Kod var adres="jakis_plik.php?id="+id_usera; A dlaczego tak? Pomyśl... Bo zapewniam, że sam podobnej rzeczy używam i działa ![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 22.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Z tego, co piszesz, to musiałbym stworzyć oddzielny plik php gdzie wypisywane byłyby adresy, ale u mnie takich map generowanych będzie np kilkadziesiąt po dodaniu przez jakiegoś użytkownika adresu. Nie chciałbym tworzyć po to specjalnej kolejnej strony, tylko bezpośrednio przekazywać zmienne z tej samej strony - tak, jak napisałem w przykładzie.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.04.2025 - 07:34 |