Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][MYSQL][google api]google maps a msql
Forum PHP.pl > Forum > Przedszkole
gakusei
witam!
Mam pewien problem z obsługą markerów na mapie google maps.
W bazie danych mam zapisane wiadomosci o punktach x y z mapy google maps. Jest to kilka miejsc w moim miescie.
Punktow jest na tyle duzo, ze umieszczanie tego recznie nie ma sensu, dodatkowo pisany jest cms, ktory umozliwia dodanie punktow.

  1. <?php
  2. <script type='text/javascript'>
  3.  
  4.         var mapa;
  5.        var polilinie = {};
  6.        var punktCentralny = new GLatLng(53.432037584693376,14.54813003540039)
  7.  
  8.  
  9.        function mapaStart()
  10.        {
  11.            if(GBrowserIsCompatible())
  12.            {
  13.                mapa = new GMap2(document.getElementById('mapka'));
  14.                mapa.setCenter(punktCentralny,15,G_SATELLITE_MAP);
  15.                mapa.setMapType(G_NORMAL_MAP);
  16.                mapa.addControl(new GSmallMapControl());
  17.                mapa.addControl(new GScaleControl());
  18.  
  19.                var ikona1 = new GIcon();
  20.                   ikona1.image = "http://maps.google.com/mapfiles/kml/pal2/icon38.png";
  21.                 ikona1.shadow = "http://maps.google.com/mapfiles/kml/pal2/icon38s.png";
  22.                 ikona1.iconSize = new GSize(32, 32);
  23.                ikona1.infoWindowAnchor = new GPoint(16,16);
  24.                 ikona1.iconAnchor = new GPoint(16,16);
  25.                 ikona1.shadowSize = new GSize(59, 32);
  26.  
  27.  
  28. !!!! tutaj dodaje marker !!!!
  29.  
  30.    dodajMarker(53.429378437118814,14.549846649169922, {title: 'Jestem tylko zwykłym markerem',draggable: true, icon: ikona1});
  31.  
  32.    dodajMarker2(53.426923,14.547615051269531,'<div class="dymek"><h4>Nazwa markera</h4><p><img src="http://www.twojewczasy.info/thumbnail2.php?fileName=obrazy/aparthotel-lux-grecja_101004_pella_nowe.jpg" height="51" width="71" alt="obraz" />Opis, składający się z kilku zdań. </p></div>');
  33.  
  34. !!!! tutaj dodaje marker !!!!
  35.  
  36.  
  37.                var poli = okrag(punktCentralny,200,'#ff0000',4,0.8,'#ffffff',0.2,55);
  38.                mapa.addOverlay(poli);
  39.               }
  40.        }
  41.  
  42.         function dodajMarker(lat,lon,txt)
  43.        {
  44.             var marker = new GMarker(new GLatLng(lat,lon));
  45.             marker.txt=txt;
  46.             mapa.addOverlay(marker);
  47.             GEvent.addListener(marker,"click",function() {
  48.                 window.location.href="http://www.wp.pl";
  49.             });
  50.            return marker;
  51.        }
  52.  
  53.         function dodajMarker2(lat,lon,txt)
  54.     {
  55.         var marker2 = new GMarker(new GLatLng(lat,lon));
  56.         marker2.txt=txt;
  57.         mapa.addOverlay(marker2);
  58.         GEvent.addListener(marker2,"mouseover",function() {
  59.                 marker2.openInfoWindowHtml(marker2.txt);
  60.             });
  61.            return marker2;
  62.     }
  63.  
  64.        function okrag(srodek,promien)
  65.        {
  66.            if(!srodek || !promien)
  67.                return;
  68.  
  69.            var wyp_kolor = '#0000ff';
  70.            var wyp_alfa = 0.10;
  71.            var obr_kolor = '#0000ff';
  72.            var obr_grubosc = 7;
  73.            var obr_alfa = 0.65;
  74.            var dokladnosc = 34;
  75.  
  76.            switch(arguments.length)
  77.            {
  78.                case 8: dokladnosc = arguments[7];
  79.                case 7: wyp_alfa = arguments[6];
  80.                case 6: wyp_kolor = arguments[5];
  81.                case 5: obr_alfa = arguments[4];
  82.                case 4: obr_grubosc = arguments[3];
  83.                case 3: obr_kolor = arguments[2];
  84.            }
  85.  
  86.            var punkty=[];
  87.            for(i=0;i<dokladnosc;i++)
  88.            {
  89.                var kat=360*i/dokladnosc;
  90.                kat = Math.PI*kat/180;
  91.                var srodekXY = mapa.fromLatLngToDivPixel(srodek);
  92.                var nowyPunktXY = new GPoint(srodekXY.x+parseFloat(promien)*Math.cos(kat),srodekXY.y+parseFloat(promien)*Math.sin(kat));
  93.                punkty.push(mapa.fromDivPixelToLatLng(nowyPunktXY));
  94.            }
  95.  
  96.            punkty.push(punkty[0]);
  97.            if(arguments.length>5)
  98.                var poli = new GPolygon(punkty,obr_kolor,obr_grubosc,obr_alfa,wyp_kolor,wyp_alfa);
  99.            else
  100.                var poli = new GPolyline(punkty,obr_kolor,obr_grubosc,obr_alfa);
  101.            return poli;
  102.        }
  103.  
  104.            </script>
  105. ?>


teraz pytanie, jak to wszystko mozna zgrac z bazą, mając punkty, opis markera itd..
bede wdzięczny za sugestie
pgrzelka
  1. <?php foreach($tablica_pobrana_z_bazy as $k=>$v):  ?>
  2.  
  3.  dodajMarker(<?php echo $v->x; ?>, <?php echo $v->y; ?>, {title: 'Jestem tylko zwykłym markerem',draggable: true, icon: ikona1});
  4.  
  5. <?php endforeach; ?>


chyba o coś takiego Ci chodziło ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.