Avatar billede learner Praktikant
18. oktober 2008 - 14:31 Der er 21 kommentarer og
1 løsning

Kort med brugernes placering.

hejsa, jeg vil lave et kort på http://autoophug.nu over autoophuggerne. Jeg forestiller mig at de selv kan gå ind og klikke deres placering ind på et kort. evt bare en billedfil eller måske endnu bedre på google maps. Og så skal det self gemmes så jeg kan vise et kort med allesammen på en gang. Er det letteste at bruge et billed eller er det lettest at integrere google maps på en måde? Er der nogen der har nogle koder som jeg kan tilpasse til mit formål.

Jeg forestiller mig at det er javascript der skal køres sammen med mit php/mysql

På forhånd mange tak :o)
Avatar billede learner Praktikant
18. oktober 2008 - 14:33 #1
ov. jeg forestiller mig at bruge overlib() til at vise info når man kører musen henover punkterne. Det er nok ik det sværeste, men det er lige med at få lavet sådan at mine brugere sætter en nål og trykker gem. hvordan laver jeg det? noget med x og y koordinater?
Avatar billede keysersoze Ekspert
18. oktober 2008 - 14:44 #2
det lyder til at google maps er det letteste - deres API har en rimelig god dokumentation og kodeeksempler, og så vidt jeg husker kan du let indsætte et punkt på deres kort ud fra en adresse.
Avatar billede olebole Juniormester
18. oktober 2008 - 14:45 #3
<ole>

GMaps har et udmærket API, der gør det ret let at arbejde med. Her er et link, der kan få dig igang. Tjek selv referencen i menuen til højre  ;o)

/mvh
</bole>
Avatar billede olebole Juniormester
18. oktober 2008 - 14:45 #4
ups ... og linket  =)
    http://code.google.com/apis/maps/
Avatar billede learner Praktikant
18. oktober 2008 - 15:55 #5
okay takker :o)
Skønt I hjælper :o)

Jeg sidder lige og roder lidt med det

Mon ik det er denne jeg skal bruge til at vise dem allesammen:
http://code.google.com/apis/maps/documentation/examples/icon-custom.html

Og jeg tror måske det er denne:http://code.google.com/apis/maps/documentation/examples/marker-drag.html
som skal bruges hvis brugerne ikke er tilfreds med deres position. Tro I ik?
Men hvordan mon man får det gemt??? som koordinater eller? Det skal jo gemmes i min db.
Avatar billede keysersoze Ekspert
19. oktober 2008 - 11:53 #6
Som allerede foreslået vil jeg mene at adressen er det letteste - folk kender jo deres egen adresse og den kan bruges i alle sammenhænge, altså også til at få placeret en prik; http://code.google.com/apis/maps/documentation/services.html - http://code.google.com/apis/maps/documentation/examples/geocoding-simple.html
Avatar billede learner Praktikant
19. oktober 2008 - 20:23 #7
Hej igen. nu er jeg næsten færdig. Men jeg vil høre om I kan hjælpe. Findes der en måde at rydde/fjerner alle markører på kortet???

jeg sætter mærkerne nogenlunde således:

var point = new GLatLng(gmap_lat,gmap_lon);
map.setCenter(point, 15);
var marker = new GMarker(point);
map.addOverlay(marker);
marker.openInfoWindowHtml("Er det her du bor???");
Avatar billede w13 Novice
19. oktober 2008 - 20:25 #8
Det skulle vist kunne klares med removeOverlays()-funktionen.
Avatar billede learner Praktikant
19. oktober 2008 - 21:29 #9
okay tusind tak :o)
Avatar billede learner Praktikant
19. oktober 2008 - 22:57 #10
Hmm...
eller clearOverlays() funktionen måske...
Men jeg kan ik rigtig få det til at virke.... Vil du give et eksempel. Evt lave en knap som hvis man trykker på den så fjernes alle markører på kortet. eller der startes forfra.
Avatar billede w13 Novice
19. oktober 2008 - 23:41 #11
Jeg har bare Googlet det.
Avatar billede w13 Novice
19. oktober 2008 - 23:42 #12
Avatar billede learner Praktikant
20. oktober 2008 - 02:09 #13
Jeg har godtnok lidt svært ved at finde hoved og hale i det. JS er ik min force :o)

Jeg mangler at få 2 ting til at lykkes:
1) Der skal kun være en markør ad gangen. Når man laver ny søgning eller kigger gamle placering, så skal alle de gamle fjernes som det første.
2) Jeg ville gerne at infoboxen med gem knappen ikke kan lukkes. Den skal bare blive stående til man søger påny.

men jeg er da nået et stykke af vejen :o)
Jeg har lavet en temp version til at lege med. Den ligger her:
http://autoophug.nu/pgs/links.php?set_position=1

Gider du/I hjælpe mig med at lave de 2 ting, jeg har prøvet en del nu...

Det kunne da os være lidt cool hvis der kan flyttes på punktet med drag, men jeg kan ik lige regne den ud for den skal lave gem knappen i infoboxen om. Og det behøves heller ik laves.
Avatar billede learner Praktikant
20. oktober 2008 - 19:10 #14
nå men mange tak for hjælpen. jeg lukker testsiden nu. Jeg mangler stadig at få 2 ting til at lykkes:

1) Der skal kun være en markør ad gangen. Dvs jeg skal bruge en funktion som sletter alle markører. Jeg kan ikke finde ud af at fjerne alle markører.

2) Jeg ville gerne at popup infoboxen kan genåbnes ved at klikke på markøren hvis man har lukket den.

Tak for hjælpen allesammen, smid venligst jeres svar.

Jeg smider lige lidt af mine koder herunder, så andre evt også kan drage nytte af denne tråd. Systemet kan altså

//////////// til at brugerne kan rette / bekræfte deres placering på kortet

            var map = null; // noget til geocoder
        var geocoder = null; // noget til geocoder
        var centerPoint = new GLatLng(56.053635,11.887207);
       
        function create_save_button(gmap_lat,gmap_lon,txt_str) {
            if (gmap_lat && gmap_lon) {
                return "<input type='button' value='" + txt_str + "' onClick=\"top.location.href='/pgs/links.php?set_position=1&save_position=1&lat=" + gmap_lat + "&lon=" + gmap_lon + "&rand_num=" + 686 + "'\">";
            }
        }
       
        function initialize() {
            if (GBrowserIsCompatible()) {
                map = new GMap2(document.getElementById("map"));
                var centerPoint = new GLatLng(56.053635,11.887207);
                map.setCenter(centerPoint, 6);
                geocoder = new GClientGeocoder(); // noget til geocoder adressefinder
                //map.setMapType(G_SATELLITE_MAP);
                map.removeMapType(G_HYBRID_MAP);
                map.addControl(new GLargeMapControl());
                map.addControl(new GMapTypeControl());
            }
        }
       
        // funktion til geocoder
        function showAddress(address) {
            if (geocoder) {
                geocoder.getLatLng(
                    address,
                    function(point) {
                        if (!point) {
                            map.setCenter(centerPoint, 6); // Nulstiller kortet til hele dk
                            alert(address + " - Ikke fundet! Rediger adressen og klik SØG igen");
                        } else {
                           
                           
                            // HER SKAL DER VÆRE NOGET MED AT SLETTE ALLE ANDRE MARKØRER
                           
                           
                            map.setCenter(point, 15);
                            var options = {
                                //draggable: true
                            };
                            var marker = new GMarker(point, options);
                            map.addOverlay(marker);
                            marker.openInfoWindowHtml("<strong>Ser det korrekt ud?</strong><br>Hvis ja, så klik på knappen herunder<br><br>" + create_save_button(point.y,point.x,'Gem Denne Placering') + "<br><br>Ellers søg venligst igen.");
                            //oLat = document.getElementById("lat");
                            //oLat.value = point.y;
                            //oLon = document.getElementById("lon");
                            //oLon.value = point.x;
                        }
                    }
                );
            }
        }
       
        // Funktion der kan sætte en markør på et bestemt sted
        function ShowOldCoordinates(gmap_lat,gmap_lon,message_on,zoom_level) {
            if (!gmap_lat || !gmap_lon) {
                map.setCenter(centerPoint, 6); // Nulstiller kortet til hele dk
                alert("Noget gik galt. Beklamer. Rediger adressen og klik SØG");
            } else {
               
                           
                // HER SKAL DER VÆRE NOGET MED AT SLETTE ALLE ANDRE MARKØRER
               
                           
                var point = new GLatLng(gmap_lat,gmap_lon);
                map.setCenter(point, zoom_level);
                var options = {
                    //draggable: true
                };
                var marker = new GMarker(point, options);
                map.addOverlay(marker);
                if (message_on){
                    marker.openInfoWindowHtml("<strong>Dette er din nuv placering!</strong><br><br>" + create_save_button(gmap_lat,gmap_lon,'Klik her hvis det er korrekt') + "<br><br>Ellers søg venligst efter anden adresse");
                }
            }
        }


    <form action="#" onsubmit="showAddress(this.address.value); return false">
        <table align="center" border="0" cellpadding="12" cellspacing="0" style="width:560px; background:#999999;">
            <tr>
                <td class="yellowtd" align="left">
                    <h3>Placering af Jeres nål på landkortet</h3><br>
                    <br>
                    <h1>Fremgangsmåde:</h1><br>
                    <strong>

                    1. Skriv den fulde adresse i adressefeltet.<br>
                    2. Klik på Søg.<br>
                    3. Når det ser korrekt ud, så tryk Gem                    </strong>
                </td>
            </tr>
            <tr>
                <td class="yellowtd" align="left">

                    <strong>Adresse :</strong> (fx: Høvej 2, 9000 Kolding, Danmark)<br>
                    <input type="text" size="40" name="address" value="Halsvej 262, 9310 Vodskov, Danmark">
                    <input type="submit" value="SØG">
                </td>
            </tr>
                            <tr>
                    <td class="yellowtd" align="left">

                        <input type="button" value="Tjek her om Jeres nuværende placering er korrekt" onclick="ShowOldCoordinates(57.066317,10.127783,1,15)">
                    </td>
                </tr>
                        </table>
        <br>
        <div id="map" style="width:560px; height:400px;" class="yellowtable"></div><br>
        <br>
    </form>



//////////// til at vise brugernes placering på kortet (sat sammen med php kan den både gætte kundens placering udfra deres adresse, og sætte nålen efter koordinater gemt i db)

du kan finde det her http://autoophug.nu/kkkk/autoophug/ og selv se kildekoden

Tak :o)
Avatar billede learner Praktikant
22. november 2008 - 02:26 #15
Hej igen. Nu har jeg rodet mig ud i noget igen :o)

Jeg vil høre om I evt kan svare hvorfor det ikke er alle "nåle" der bliver vist på kortet? her http://www.huggernet.dk/pgs/links.php?vis_firmaer=1
Kan det være nogle specielle tegn såsom é eller ´ eller lignende, som bryder ind og laver koks i det? For den skulle jo vise stort set alle firmaerne på kortet.

Håber på hjælp :o)
Avatar billede learner Praktikant
22. november 2008 - 02:27 #16
Underligt... Nogle gange kommer der mange og andre gange når man besøger siden, så kommer der knap så mange???
Avatar billede learner Praktikant
27. november 2008 - 02:01 #17
Nå jeg må hellere afslutte denne tråd. Smid venligst jeres svar og få velfortjente point :o)
Avatar billede w13 Novice
27. november 2008 - 10:36 #18
Ingen til mig, tak. =)
Avatar billede learner Praktikant
27. november 2008 - 13:46 #19
keysersoze ?
Avatar billede keysersoze Ekspert
27. november 2008 - 17:47 #20
sry - har vist ikke fået fulgt så meget op her, men jeg kender desværre ikke til nogle af de problemer du er stødt på.

skal kun have point hvis jeg har været til hjælp (:
Avatar billede keysersoze Ekspert
27. november 2008 - 17:48 #21
... og det skulle have været et svar <:o)
Avatar billede learner Praktikant
27. november 2008 - 23:43 #22
I har hjulpet mig meget fint, tak :o)
Undrer mig bare over hvorfor det ikke er alle firmaerne der vises på kortet, men det er sikkert et ulovligt tegn der skaber en fejl i javascriptet. Men det sjove ved det er at der er flere når man kigger gennem firefox og færre når man kigger på siden gennem Chrome
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester