Skocz do zawartości
  • 0
zbyszekk

Mapy google, pobieranie punktów z bazy nie pliku.

Pytanie

Witam. Mam mapę google do gta sa. Punkty są pobierane z markers.xml. A ja chcę zrobić pobieranie punktów z bazy danych. Nie mam pojęcia jak to wykonać, da ktoś jakieś wskazówki? 

 

wycinek z map.obs.js


function checkBounds() {
    if (allowedBounds.contains(map.getCenter())) {
        return
    }
    var C = map.getCenter();
    var X = C.lng();
    var Y = C.lat();
    var AmaxX = allowedBounds.getNorthEast().lng();
    var AmaxY = allowedBounds.getNorthEast().lat();
    var AminX = allowedBounds.getSouthWest().lng();
    var AminY = allowedBounds.getSouthWest().lat();
    if (X < AminX) {
        X = AminX
    }
    if (X > AmaxX) {
        X = AmaxX
    }
    if (Y < AminY) {
        Y = AminY
    }
    if (Y > AmaxY) {
        Y = AmaxY
    }
    map.setCenter(new GLatLng(Y, X))
};
var request = GXmlHttp.create();
request.open("GET", "/admin/applications_addon/other/lspd/modules_public/crime/markers.xml", true);
request.onreadystatechange = function () {
if (request.readyState == 4) {
var xmlDoc = GXml.parse(request.responseText);
if (window.ActiveXObject) {
    xmlDoc = GXml.parse(request.responseText);
    fParsed = xml.parsed;
  } else if (window.DOMParser) {
    var parser=new DOMParser();
    xmlDoc =parser.parseFromString(request.responseText,"text/xml");
    fParsed = true;

} 
        
        var markers = xmlDoc.documentElement.getElementsByTagName("marker");
        var iid = 0;
        for (var i = 0; i < markers.length; i++) {
            var lat = parseFloat(markers[i].getAttribute("lat"));
            var lng = parseFloat(markers[i].getAttribute("lng"));
            var point = fixCords(lat, lng);
            var name = markers[i].getAttribute("name");
            var html = '<div class="title"><b>' + name + '</b></div>' + markers[i].getAttribute("html");
            var icon = markers[i].getAttribute("icon");
            var marker = createMarker(point, name, html, icon, iid);
            map.addOverlay(marker);
            iid++
        }
    }
};

Tak wygląda markers.xml

<?xml version="1.0" encoding="utf-8"?>
	<map>
		<categories>
			<category id="Gangi" name="Gangi"/>  
			<category id="MAfie" name="Mafie"/>  
			<category id="Szajki" name="Szajki"/>  
		</categories>

		<markers><marker lat='0.05947475' lng='0.008940433333333333' html='123456789 [30-04-2013 14:10]' name='[1] chuj' icon='7' category='7' image=''/>
<marker lat='0.057409883333333335' lng='0.007743249999999999' html='abcdefghjklmnoprstwx [30-04-2013 14:43]' name='[2] abcdefghjklmnoprstwx' icon='15' category='15' image=''/>
<marker lat='0.020604733333333333' lng='0.05433455' html='asd' name='qwe' icon='12' category='' image=''/>
</markers>
</map>

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Polecane posty

  • 0

zamień to: 

request.open("GET", "/admin/applications_addon/other/lspd/modules_public/crime/markers.xml", true)

; na adres do swojego skryptu np. http://aaa.pl/crime/markers i ten skrypt niech zwraca taką samą strukturę XML'a jak jest w tym pliku

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony


  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×

Ważne informacje

Kontynuując przeglądanie strony, wyrażasz zgodę na używanie przez nas plików cookies.