Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> API google map i wiele markerów + geolokalizacja
sigal2006
post 12.07.2012, 07:43:10
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 17.02.2010

Ostrzeżenie: (10%)
X----


chce móc wyświetlić wiele markerów na 1 mapie google (V3) więc zainstalowałem mapę google z geolokalizacją po adresie i wrzyciłem wewnątrz pętle

  1. <script type="text/javascript">
  2. <!--
  3. var mapa; // obiekt globalny
  4. var dymek= new google.maps.InfoWindow();
  5. var geokoder = new google.maps.Geocoder();
  6.  
  7. function dodajMarker(abc)
  8. {
  9. // tworzymy marker
  10. var opcjeMarkera =
  11. {
  12. position: abc,
  13. map: mapa
  14. }
  15. var marker = new google.maps.Marker(opcjeMarkera);
  16.  
  17.  
  18. return marker;
  19. }
  20.  
  21. function mapaStart()
  22. {
  23. var opcjeMapy =
  24. {
  25. center: new google.maps.LatLng(0,0),
  26. zoom: 14,
  27. mapTypeId: google.maps.MapTypeId.ROADMAP
  28. }
  29. mapa = new google.maps.Map(document.getElementById("mapka"), opcjeMapy);
  30.  
  31.  
  32.  
  33.  
  34.  
  35. <?php
  36.  
  37. if ($zapytanie_mapa[0][0] > 0){
  38. for ($i=1;$i<=$zapytanie_mapa[0][0];$i++){
  39. ?>
  40.  
  41. geokoder.geocode({address: '<? print $zapytanie_mapa[$i][1];?>'}, obslugaGeokodowania0<? print $zapytanie_mapa[$i][0];?>);
  42.  
  43. function obslugaGeokodowania0<? print $zapytanie_mapa[$i][0];?>(wyniki, status)
  44. { if(status == google.maps.GeocoderStatus.OK)
  45. { mapa.setCenter(wyniki[0].geometry.location);
  46. var abcd=wyniki[0].geometry.location;
  47. var marker0<? print $zapytanie_mapa[$i][0];?> = dodajMarker(abcd);
  48.  
  49. google.maps.event.addListener(marker0<? print $zapytanie_mapa[$i][0];?>,"click",function()
  50. {
  51.  
  52. dymek.setContent('<? print $zapytanie_mapa[$i][2];?>');
  53. dymek.open(mapa,marker0<? print $zapytanie_mapa[$i][0];?>); });
  54.  
  55. } }
  56.  
  57.  
  58. <?}}?>
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68. }
  69. </script>
  70.  
  71.  
  72. <div id="mapka" style="width: 977px; height: 550px; border: 1px solid black; background: gray;"></div>



Mam dość dziwny problem wyświetla mi pare lokacji, tylko 10 pierwszych łącznie rekordów do wyświetlenia będzie ok 50. Proszę o pomoc bo kąpletnie nie wiem czemu tak jest może ktoś ma inny pomysł na to zamiast js i pętla w php questionmark.gif
Go to the top of the page
+Quote Post
thek
post 12.07.2012, 15:37:08
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




A nie pomyślałeś, że google ma limit geokodowań z jednego adresu na jednostkę czasu? Sprawdzaj lepiej odpowiedź serwera, bo wtedy sypie kodem 620 google.


--------------------
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
Go to the top of the page
+Quote Post
sigal2006
post 12.07.2012, 18:57:36
Post #3





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 17.02.2010

Ostrzeżenie: (10%)
X----


a istnieje jakaś metoda na ominięcie tego limitu questionmark.gif niewiem coś typu geokodowanie co 3 sek. widziałem coś takiego dla wersji V2 ale nie dla V3 proszę o pomoc bo sam sobie nie poradzę
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 06:09