Avatar billede learner Praktikant
28. november 2008 - 17:51 Der er 101 kommentarer og
2 løsninger

google maps kort med fejl som jeg ik kan finde eller forstå

Hejsa, jeg har lavet et kort med alle erhvervskunderne på min side og det virker som sådan ok, lige bortset fra at det ikke er alle firmaerne som får en nål på kortet. Jeg har så testet lidt for at finde ud af hvorfor nogle af dem ikke er med.

siden er her:
http://www.huggernet.dk/pgs/links.php?vis_firmaer=1

og jeg har fundet ud af at flere firmaer dukker op når jeg laver en alert() ved de firmaer som google maps ikke kan finde. Underligt. Her er forandringen jeg laver med php GET:

function AddressPoint(address,txt_str,firmanavn_title) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    <?php if (!$_GET["med_alert"]){echo"//";} ?>return alert(address + " ikke fundet");
                }
            }
        );
    }
}


se effekten af det her: (der skulle gerne være flere nåle på kortet)
http://www.huggernet.dk/pgs/links.php?med_alert=1&vis_firmaer=1

Som du kan se er der flere firmaer når man har klikket OK til alle de firmaer som maps ik ka finde.

Hvordan kan det være der er denne forskel?
Avatar billede erikjacobsen Ekspert
28. november 2008 - 20:24 #1
Kan det være adresser, der ikke er helt præcise, eller ikke findes i deres tabeller.
Avatar billede olebole Juniormester
28. november 2008 - 21:21 #2
<ole>

Der kan være flere årsager. Nogle af adresserne kender krak.dk heller ikke - og en adresse på Jylandsvej er det jo f.eks. ret oplagt, Google ikke kan finde  ;o)

Hvis du bygger søgningen på adresser, du ikke selv har indtastet, men i stedet bruger en form for tilmelding, kunne du validere adressen lige efter tilmeldingen (onchange på tekstfeltet/-felterne).

Du kunne begynde med at sætte en variabel 'bTriedOnce' til false i begyndelsen af dokumentet.
Kan adressen ikke findes efter indtastning - og bTriedOnce er false - alert'es brugeren: "Tjek venligst, om adressen er korrekt." - og bTriedOnce sættes til true.
Hvis adressen ikke kan findes - og bTriedOnce er true - indsættes alligevel i databasen og der sendes en mail til dig selv om manuelt at tjekke adressen.

På den måde alert'es brugeren kun én gang, så det ikke bliver irriterende  =)

/mvh
</bole>
Avatar billede learner Praktikant
28. november 2008 - 21:58 #3
jep det var en god ide.
Jeg har faktisk startet på at lave noget lignende det du beskriver :o)

Men jeg har også fundet ud af at mange af de adresser som bliver afvist som "ugyldige" eller "umulige at finde" faktisk sagtens kan findes på google maps. Jeg bruger akkurat samme adresse og mange af dem findes uden problemer. Så der må være en fejl. Bare lige med at finde den.
Avatar billede erikjacobsen Ekspert
28. november 2008 - 22:09 #4
Kunne det i de tilfælde tænkes at være et tegnsæt problem?
Avatar billede learner Praktikant
28. november 2008 - 22:11 #5
nej for der er også nogen med alm tegne som glipper. og det ser mere ud til at forekomme i grupper. Og oftere jo længere nede man kommer... Underligt :)
Avatar billede olebole Juniormester
28. november 2008 - 22:11 #6
Erik >> Måske, men der findes adresser med specialtegn. Kommer alle adresser fra samme kilde, er det ikke sandsynligt - kommer de fra forskellige, er det absolut en mulighed  =)
Avatar billede olebole Juniormester
28. november 2008 - 22:18 #7
(28/11-2008 22:11:09) >> aha ... interessant! Måske, der går ged i noget, fordi du sender formange queries på for kort tid - eller serveren har for travlt i dét splitsekund(?)

Prøv at samle de ikke fundne op i et array og løb det derefter igennem og send de samme queries én gang mere. Hvad sker der ved det?

- og tjek lige alle adresser. Der var som sagt et par af dem, jeg testede på Krak, som heller ikke kunne findes dér. Oplagt er naturligvis sdavøfajl, som den jeg viste før, men der kan sikkert også være andre grunde  =)
Avatar billede learner Praktikant
28. november 2008 - 22:18 #8
hmmm jeg har prøvet at opdatere siden http://www.huggernet.dk/pgs/links.php?vis_firmaer=1 nogle gange og kigge nøje efter hvilke som har ugyldig adresse. og det overrasker mig at det er forskelligt fra gang til gang hvilke adresser som bliver afvist. hehe :o) dete r dæleme en underlig fejl :o)
Avatar billede learner Praktikant
28. november 2008 - 22:19 #9
ahhh ja da :) rigtig genial ide :)
Avatar billede olebole Juniormester
28. november 2008 - 22:19 #10
Så er jeg helt sikker på, jeg har ret i min seneste antagelse  =)
Avatar billede learner Praktikant
28. november 2008 - 22:22 #11
genial ide, men hvor mange gange skal den prøve hver adresse? :o)
Avatar billede learner Praktikant
28. november 2008 - 22:24 #12
og hvordan implementerer jeg det på en nem og smart måde i det kode jeg har? Skal det ind som her:

function AddressPoint(address,txt_str,firmanavn_title) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    HER ???
                }
            }
        );
    }
}
Avatar billede olebole Juniormester
28. november 2008 - 22:25 #13
Du kunne evt. sætte en variabel til 5. Så kunne du løbe alle adresser igennem én gang og samle de ikke-fundne op i et array.

Derefter løber du array'et igennem og tæller variablen ned med én. Når variablen er 0, løber du ikke array'et igennem mere.

Det kan aldrig give 100% garanti for, at alle bliver fundet, men mon ikke det bliver tilfældet?  =)
Avatar billede learner Praktikant
28. november 2008 - 22:29 #14
aha okay. god løsning. jeg må lige prøve om jeg kan finde ud af det. javascript er ikke min stærke side, men det kan vel ik være så svært :o) Bliver spændende at se om det virker :o)
Avatar billede olebole Juniormester
28. november 2008 - 22:40 #15
Du kan gøre noget à la:

var aNotFound = [];
var nMaxQueries = 5;
function AddressPoint(address,txt_str,firmanavn_title) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    aNotFound.push([point, txt_str, firmanavn_title])
                }
            }
        );
    }
}

function CheckAgain() {
    var a = aNotFound.concat("");
    aNotFound = [];
    for (var i=0,j=a.length; i<j; i++) {
        AddressPoint(a[0], a[1], a[2]);
    }
    if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
}

Når du har løbet alle adresser igennem første gang, kan du kalde funktionen 'CheckAgain', hvis aNotFound.length er større end 0
Avatar billede olebole Juniormester
28. november 2008 - 22:42 #16
Udtrykket:
    var a = aNotFound.concat("");

- som måske kan forekomme lidt kryptisk, lægger en klon af 'aNotFound' i 'a'  ;o)
Avatar billede erikjacobsen Ekspert
28. november 2008 - 22:43 #17
Og så kunne man også overveje at slå adressen op een eneste gang og finde længde-/breddegrad, putte det i databasen, og pludselig, som ren magi, ren Harry Potter, få en hurtig applikation.
Avatar billede learner Praktikant
28. november 2008 - 22:44 #18
Hehe det kom lige som jeg sad og var ved at begynde at ryge ud af håret :o) jeg vil lige sidde og regne ud hvordan det virker :o) Mange tak
Avatar billede learner Praktikant
28. november 2008 - 22:48 #19
hehe jeg blir helt stolt af alt det jeg har lavet i forhold til hvor lidt jeg egentligt ved om at kode :o) hehe
Avatar billede learner Praktikant
28. november 2008 - 23:14 #20
okay hvad synes du om denne løsning:

var aNotFound = [];
var nMaxQueries = 6;
function AddressPoint(address,txt_str,firmanavn_title,brugers_id) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    aNotFound.push([address, txt_str, firmanavn_title, brugers_id])
                }
            }
        );
    }
}

function CheckAgain() {
    var a = aNotFound.concat("");
    aNotFound = [];
    for (var i=0,j=a.length; i<j; i++) {
        if (nMaxQueries==1){
            closeobj("driving_" + a[3]); // fjerner kørselsvejledning
            openobj_inline("confirm_" + a[3]); // viser link til 'ret adressen' i stedet for kørselsvejledning
            <?php if (!$_GET["med_alert"]){echo"//";} ?>return alert(a[0] + " ikke fundet"); // så webmaster kan teste
        } else {
            AddressPoint(a[0], a[1], a[2], a[3]);
        }
    }
    if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
}

var point = null;
AddressPoint("Vejnavn 111, postnr og by, land", "Firmanavn og adresse osv", "Firmanavn","282");
og mange flere.......

// Den tester lige de adresser som umiddelbart ikke gav pote
if (aNotFound.length > 0){
    CheckAgain();
}
Avatar billede learner Praktikant
28. november 2008 - 23:18 #21
måske skulle man indsætte en delay ??
Avatar billede olebole Juniormester
28. november 2008 - 23:26 #22
Hvad sker der, hvis du skriver:

if (aNotFound.length > 0){
    CheckAgain();
}
alert(aNotFound.length);

Hvor mange er der så, du ikke kunne finde?
Avatar billede learner Praktikant
28. november 2008 - 23:29 #23
jeg tester det lige... i mellemtiden kan du måske sige mig om jeg skal skrive :
if (nMaxQueries=1){
eller
if (nMaxQueries==1){
Avatar billede olebole Juniormester
28. november 2008 - 23:29 #24
if (nMaxQueries==1){
Avatar billede learner Praktikant
28. november 2008 - 23:30 #25
den resulterer i alert('0') altså skriver den "0" til mig
Avatar billede olebole Juniormester
28. november 2008 - 23:31 #26
Men du kan vel ligeså godt skrive:
    if (aNotFound.length > 0){

Så tester den én runde mere, men det kan du jo sætte i 'nMaxQueries '
Avatar billede learner Praktikant
28. november 2008 - 23:31 #27
og det har ik rigtig hjulpet :(
Avatar billede olebole Juniormester
28. november 2008 - 23:31 #28
"den resulterer i alert('0') altså skriver den "0" til mig" >> Fint, så er der jo ikke nogen, den ikke kan finde  =)
Avatar billede olebole Juniormester
28. november 2008 - 23:32 #29
Hvad har ikke hjulpet?
Avatar billede learner Praktikant
28. november 2008 - 23:33 #30
jo men jeg gør noget andet. jeg sætter 'nMaxQueries  til 6 og så skal den sidste runde fjerne en kørselsvejledning ved at hide link til kørselsvejledning. for så er adressen jo nok ugyldig
Avatar billede learner Praktikant
28. november 2008 - 23:35 #31
det har ikke hjulpet for jeg ved at der er ugyldige adresser som skulle resultere i at aNotFound.length ender med at være mere end 0. ellers er der noget den gør forkert.
Avatar billede learner Praktikant
28. november 2008 - 23:39 #32
jeg bruger nu:


// funktion til geocoder
var aNotFound = [];
var nMaxQueries = 6;
function AddressPoint(address,txt_str,firmanavn_title,brugers_id) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    aNotFound.push([address, txt_str, firmanavn_title, brugers_id])
                }
            }
        );
    }
}
// Denne tjekker endnu en gang de mislykkedes forsøg på at finde adresserne
function CheckAgain() {
    var a = aNotFound.concat("");
    aNotFound = [];
    for (var i=0,j=a.length; i<j; i++) {
        if (nMaxQueries==1){
            closeobj("driving_" + a[3]); // fjerner kørselsvejledning
            openobj_inline("confirm_" + a[3]); // viser link til 'ret adressen' i stedet for kørselsvejledning
            <?php if (!$_GET["med_alert"]){echo"//";} ?>return alert(a[0] + " ikke fundet"); // så webmaster kan teste
        } else {
            AddressPoint(a[0], a[1], a[2], a[3]);
        }
    }
    if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
}
Avatar billede olebole Juniormester
28. november 2008 - 23:39 #33
Ja, sorry! Du skal skrive:

if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
else alert("Kunne ikke finde disse "+a.length+" adresser:\n---------------------\n"+a.join("\n\n"));
Avatar billede olebole Juniormester
28. november 2008 - 23:41 #34
- og vi prøver ige  :o|

if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
else alert("Kunne ikke finde disse "+aNotFound.length+" adresser:\n---------------------\n"+aNotFound.join("\n\n"));
Avatar billede learner Praktikant
28. november 2008 - 23:42 #35
som du kan se har jeg lavet en lille ændring (der følger brugers_id med) men det så den kan fjerne kørselsvejledning linket ved siden af brugerens adresse
Avatar billede learner Praktikant
28. november 2008 - 23:43 #36
ok prøver jeg lige :o)
Avatar billede learner Praktikant
28. november 2008 - 23:44 #37
den siger stadig 0
Avatar billede learner Praktikant
28. november 2008 - 23:48 #38
er det fordi jeg har rettet point til address i :
aNotFound.push([address, txt_str, firmanavn_title, brugers_id])

??
Avatar billede learner Praktikant
28. november 2008 - 23:49 #39
jeg synes det så mere korrekt ud
Avatar billede olebole Juniormester
28. november 2008 - 23:50 #40
Nej, det er rigtig nok. Prøv lige at flytte:
    var aNotFound = [];

- op til:
    var geocoder = null; // noget til geocoder
    var aNotFound = [];
Avatar billede olebole Juniormester
28. november 2008 - 23:50 #41
- også:
    var nMaxQueries = 6;
Avatar billede learner Praktikant
28. november 2008 - 23:54 #42
still the same ;O)
Avatar billede learner Praktikant
28. november 2008 - 23:54 #43
den er lidt tricky :)
Avatar billede olebole Juniormester
28. november 2008 - 23:55 #44
Du tester et forkert sted. Det er ved sidste linje i funktionen 'CheckAgain', du skal alert'e  ;o)
Avatar billede learner Praktikant
28. november 2008 - 23:58 #45
ahhh :)
Avatar billede learner Praktikant
29. november 2008 - 00:04 #46
ok det er flyttet ind i bunden af funktionen 'CheckAgain'
men det gør ikke nogen forskel...

skal jeg ik efter alle adresserne skrive ca således:

var point = null;
AddressPoint("Vejnavn 111, postnr og by, land", "Firmanavn og adresse osv", "Firmanavn","282");
og mange flere.......

// DENNE SKAL VÆRE HERefter IK????
if (aNotFound.length>0) CheckAgain();
Avatar billede learner Praktikant
29. november 2008 - 00:06 #47
er det ik heri problemet er:
function AddressPoint(address,txt_str,firmanavn_title,brugers_id) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    aNotFound.push([address, txt_str, firmanavn_title, brugers_id])
                }
            }
        );
    }
}

for der er jo ingenting i aNotFound arrayet og det burde der være for der er ugyldige adresser som 100% sikkert burde ende deri
Avatar billede olebole Juniormester
29. november 2008 - 00:08 #48
Der er masser i aNotFound og nMaxQueries er 6, så CheckAgain synes slet ikke at blive kaldt  :o|
Avatar billede olebole Juniormester
29. november 2008 - 00:10 #49
I stedet for:
    if (aNotFound.length>0) CheckAgain();

- så prøv bare at skrive:
    CheckAgain();
Avatar billede learner Praktikant
29. november 2008 - 00:10 #50
har jeg prøvet ;O) virker ik, men jeg kan lige prøve igen
Avatar billede learner Praktikant
29. november 2008 - 00:11 #51
resultat: kan ikke finde disse 0 adresser:
Avatar billede olebole Juniormester
29. november 2008 - 00:12 #52
Dooooohhhh ...!!!  :o(

AddressPoint(a[i][0], a[i][1], a[i][2], a[i][3]);
Avatar billede olebole Juniormester
29. november 2008 - 00:13 #53
- og det skal du selvfølgelig også bruge de andre steder, hvor du bruger a-array'et  ;o)
Avatar billede learner Praktikant
29. november 2008 - 00:14 #54
hehehe :) ja jeg har lidt svært ved at gennemskue js men det giver mening  :)
Avatar billede olebole Juniormester
29. november 2008 - 00:14 #55
a er et array af arrays  ;o)
Avatar billede learner Praktikant
29. november 2008 - 00:18 #56
skal
var a = aNotFound.concat("");
og
aNotFound = [];

ik os flyttes op
Avatar billede olebole Juniormester
29. november 2008 - 00:18 #57
29/11-2008 00:10:19
Avatar billede olebole Juniormester
29. november 2008 - 00:19 #58
29/11-2008 00:18:37 >> Nej
Avatar billede learner Praktikant
29. november 2008 - 00:19 #59
og skal der stå :
if (aNotFound.length>0) CheckAgain();
eller hvad er det du henviser til?
Avatar billede olebole Juniormester
29. november 2008 - 00:21 #60
Nje, prøv at fjerne betingelsen
Avatar billede learner Praktikant
29. november 2008 - 00:21 #61
men det virker stadig ikke.... sikker på at :
var a = aNotFound.concat("");
og
aNotFound = [];

skal stå i starten af funktionen 'CheckAgain' ??
Avatar billede olebole Juniormester
29. november 2008 - 00:22 #62
Ja, helt sikker  =)
Avatar billede learner Praktikant
29. november 2008 - 00:25 #63
okay :o)
Jamen sikke dog en tricky bæst vi har gang i her. du skal have mange tak fordi du gider hjælpe med det. Uden ville jeg være lidt vingskudt :)
Avatar billede learner Praktikant
29. november 2008 - 00:28 #64
okay jeg opsummerer lige hvad vi har nu:

// funktion til geocoder
function AddressPoint(address,txt_str,firmanavn_title,brugers_id) {
    if (geocoder) {
        geocoder.getLatLng( address,
            function(point){
                if (point){
                    map.addOverlay(createMarker(point, txt_str, firmanavn_title));
                } else {
                    aNotFound.push([address, txt_str, firmanavn_title, brugers_id])
                }
            }
        );
    }
}
// Denne tjekker endnu en gang de mislykkedes forsøg på at finde adresserne
function CheckAgain() {
    var a = aNotFound.concat("");
    aNotFound = [];
    for (var i=0,j=a.length; i<j; i++) {
        if (nMaxQueries==1){
            closeobj("driving_" + a[i][3]); // fjerner kørselsvejledning
            openobj_inline("confirm_" + a[i][3]); // viser link til 'ret adressen' i stedet for kørselsvejledning
            <?php if (!$_GET["med_alert"]){echo"//";} ?>return alert(a[i][0] + " ikke fundet"); // så webmaster kan teste
        } else {
            AddressPoint(a[i][0], a[i][1], a[i][2], a[i][3]);
        }
    }
    if (aNotFound.length>0 && --nMaxQueries>0) CheckAgain();
    else alert("Kunne ikke finde disse "+aNotFound.length+" adresser:\n---------------------\n"+aNotFound.join("\n\n"));
}


//og så adresserne...
var point = null;
AddressPoint("Vejnavn 111, postnr og by, land", "Firmanavn og adresse link til kørselsvejledning (med id self) osv...", "Firmanavn","282");
//og mange flere.......


CheckAgain();
Avatar billede olebole Juniormester
29. november 2008 - 00:29 #65
Jeg giver op. Jeg kan ikke komme videre uden selv at sidde og teste  =)
Avatar billede learner Praktikant
29. november 2008 - 00:30 #66
og disse sættes længere oppe:
var geocoder = null; // noget til geocoder
var aNotFound = [];
var nMaxQueries = 6;


Sikker på denne er korrekt? :
aNotFound.push([address, txt_str, firmanavn_title, brugers_id])
Avatar billede learner Praktikant
29. november 2008 - 00:31 #67
Avatar billede learner Praktikant
29. november 2008 - 00:31 #68
Kaffe! :D
Avatar billede learner Praktikant
29. november 2008 - 00:36 #69
hmm min fejlkonsol i firefox siger at a ikke er defineret. Kan det være fejlen?
Avatar billede erikjacobsen Ekspert
29. november 2008 - 00:39 #70
Lad mig reiterere 28/11-2008 22:43:52 - det kan være vældig sjovt at bruge den bedste aften på hele ugen, fredag, med et smovse sig i lækker javascript, men

1) Det er spild af ressourcer at slå adresser op på XXX virksomheder, og få koordinaterne, hver evig eneste gang en besøgende går ind på siden.

2) Desuden tager det tid, for den besøgende, og er afhængig af den besøgendes maskiner og tykkelse af kabler.

Derfor mit forslag om at gøre det een gang for alle, for en adresse. Det kan helt sikkert gøres serverside (siger en østjyde, der ikke lige har prøvet dét, men som har erfaring fra andre Google-API-er, og som en gang har stået på toppen af det ene World Trade Center tårn).
Avatar billede learner Praktikant
29. november 2008 - 00:39 #71
nej det er nok ik det for det har noget med google at gøre
Avatar billede olebole Juniormester
29. november 2008 - 00:41 #72
Du må ikke skrive return her:
    <?php if (!$_GET["med_alert"]){echo"//";} ?>return alert(a[i][0] + " ikke fundet"); // så webmaster kan teste

Så stopper alt jo der ...
Avatar billede erikjacobsen Ekspert
29. november 2008 - 00:43 #73
At a ikke er defineret er bare en advarsel. Ligemeget.

Jeg skulle tilføje fra før: Det er ok at cache koordinater for Hovedvej 117. Med de aktuelle tektoniske pladeforskydning under Danmark, skal den ikke genberegnes før om ca. 100 år.
Avatar billede olebole Juniormester
29. november 2008 - 00:44 #74
Erik >> Nej, det er ikke en advarsel, men en fejl  ;o)
Avatar billede olebole Juniormester
29. november 2008 - 00:44 #75
- sjovt nok siger IE, at 'ta' ikke er defineret  :D
Avatar billede learner Praktikant
29. november 2008 - 00:45 #76
Jo men det har jeg sådan set lavet det du omtaler. Jeg har lavet således at brugerne som endnu ikke har bekræftet deres længde og breddegrad er korrekt, får en månedlig email hvor de får et direkte link til den side hvor de skal bekræfte at nålen er korrekt placeret. Så det er kun her den første måned der skal slåes så mange adresser op. derefter så er det måske 10 adresser + nogle enkelte nye brugere, som ikke har en LATitude og LONgtitude eller hvad det hedder.
Avatar billede learner Praktikant
29. november 2008 - 00:49 #77
>> 29/11-2008 00:41:54 ahhhhhh :)
Avatar billede erikjacobsen Ekspert
29. november 2008 - 00:49 #78
Stadigvæk learner: Det sker dog alligevel et pænt antal gange fra den besøgendes maskine. Disse kunne også stå i din tabel, men en status: "ubekræftet".

Ja, Ole. Det siger vi bare.
Avatar billede learner Praktikant
29. november 2008 - 00:53 #79
jeps det var nok bedre at gøre det sådan
Avatar billede erikjacobsen Ekspert
29. november 2008 - 00:56 #80
Men bestem selv - tag dig ikke af mig. Jeg sidder bare et sted hvor jeg bruger mine kræfter på at undgå redundante udregning. "Your milage may vary", som man sige på spansk.
Avatar billede olebole Juniormester
29. november 2008 - 01:00 #81
I øjeblikket ser det ud til, du har fundet vejen til den evige 'lykke'  ;D
Avatar billede learner Praktikant
29. november 2008 - 01:04 #82
men no matter what så burde det da virke gør det ik?
Avatar billede olebole Juniormester
29. november 2008 - 15:52 #83
Det kan ikke 100% udelukkes, at det burde virke - men ret meget tyder på, vi laver en fejl. At man ikke kan finde sin fejl, bør ikke lægges til grund for at konkludere, at tingene bør virke  ;o)

Det er for lang tid siden, jeg sidst har rodet med GMaps API'et - så jeg skal som sagt selv sidde og teste, hvis jeg skal finde fejlen ... det gør jeg ikke  =)
Avatar billede learner Praktikant
29. november 2008 - 16:05 #84
okay
Jeg aner bare ik hvad push og concat betyder og hvad der sker.
og jeg forstår heller ik hvad der sker i denne:
for (var i=0,j=a.length; i<j; i++) {
jeg er vant til at bruge foreach () i php
Avatar billede olebole Juniormester
29. november 2008 - 16:13 #85
Jeg ved godt, der er en uvane blandt PHP'ere til altid at bruge foreach-løkker - selvom der ligeså godt kunne bruges en alm. for-løkke (som er væsentligt bedre performende):
    http://dk2.php.net/manual/en/control-structures.for.php
    https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Statements/for

Push gør det samme som array_push: tilføjer et element i slutningen af et array:
    http://dk2.php.net/manual/en/function.array-push.php
    https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Array/push

- og når man konkatenerer (samler) et array med en tom streng, oprettes en klon af array'et. Normalt bruges concat til at samle to arrays:
    https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Array/concat
Avatar billede learner Praktikant
29. november 2008 - 16:13 #86
i php ville jeg nok skrive noget lign

if (der var nogen adresser som ikke blev fundet)
  $count=false
  while ($count < 7){
    if ($count==6){
      så findes den bare ik og kørselsvejl skal fjernes og evt en besked til brugeren første gang
    } else {
      fjern den fra array med de mislykkede
      prøv igen om den findes
    }
    $count++;
  }
}
Avatar billede olebole Juniormester
29. november 2008 - 16:15 #87
Ja, men nu er det jo hverken Perl, Phyton, PHP eller C++  =)
Avatar billede learner Praktikant
29. november 2008 - 16:17 #88
hehe :)
Avatar billede learner Praktikant
01. december 2008 - 15:16 #89
kan fejlen være i denne? :
var aNotFound = [];
Avatar billede learner Praktikant
01. december 2008 - 15:24 #90
jeg fandt en lille fejl,

der manglede et semikolon i enden af :
aNotFound.push([address, txt_str, firmanavn_title, brugers_id])

men jeg har ik oplevet at det løste problemet desværre.
Avatar billede tinem Novice
02. december 2008 - 12:35 #91
Måske kan denne tutorial http://code.google.com/support/bin/answer.py?answer=80200&topic=11369&ctx=sibling hjælpe dig, men du skal være klar over at den IKKE viser nær så korrekt som http://maps.google.com/, hvilken heller IKKE er særlig god. Forklaring på hvorfor disse 2 er forskellige http://code.google.com/support/bin/answer.py?answer=60738&topic=12266&fromgroup=true.

Denne http://www.findvej.dk/ er og bliver den bedste.
Avatar billede learner Praktikant
03. december 2008 - 01:56 #92
Sorry jeg ik har svaret. har lagt syg et par dage.

Det er jo kanon nemt med den php tutorial. TUSIND TAK :D

Jeg vil lave det i morgen.

Smid et svar allesammen og jeg vil fordele point.

Tusind tak for alt hjælpen :D
Avatar billede olebole Juniormester
03. december 2008 - 16:34 #93
;o)
Avatar billede learner Praktikant
03. december 2008 - 16:41 #94
Jeg forventer os svar fra tinem og måske erik?
Avatar billede tinem Novice
03. december 2008 - 18:12 #95
learner er det = Anne-Mette Jørsfeldt? Det er en rigtig spændende side du er ved at lave http://www.huggernet.dk. Har du brugt et CMS-system eller har du selv opbygget siden?

Var det tutorial'en som fik det til at fungere? Der er mange andre gode tutorials med phpmysql lavet af Pamela. Jeg kunne ikke have lavet mine maps uden.
Avatar billede olebole Juniormester
03. december 2008 - 18:35 #96
*LoL* Tines spørgsmål foranledigede mig til at kikke i kildekoden for spor af et CMS. Der fandt jeg denne her, som - undskyld jeg morer mig over koden - er fuldstændig ubetalelig morsom:

<script type='text/javascript'>    document.write('<!'+'-- <br><br><center>Denne side virker kun korrekt hvis din browser kan læse JavaScript og det kan din browser tilsyneladende ikke.<br><br>Du har muligvis slået JavaScript fra i din browsers indstillinger.<br><br>Du kan ændre din browsers indstillinger eller downloade en ny browser.<br>Vi foreslår at du bruger Microsoft Internet Explorer eller Mozilla Firefox - Disse giver dig fuld adgang til denne side.<br><br><br><br>Beklager.<center><br><br><br><br><br><br><br><br><br><br> -->');
</script>

For det første forsøger man at udskrive en besked til brugeren om, at hans browser ikke understøtter JavaScript ... men hvordan er det nu lige, man får en browser, som ikke understøtter JavaScript til at skrive noget ud med JavaScript?

Hvis det et kort øjeblik lykkes os at se bort fra dén 'detalje', så er beskeden til brugeren ovenikøbet konstrueret som en HTML-kommentar - der jo som bekendt er usynlig for brugeren!

Jeg ved godt, det måske ikke er så sjovt at se folk grine ad ens kode, men denne her er som sagt grænsende til det hysterisk humoristiske. Hvis en kode skal have Nobelprisen for kode-jokes, må det være denne her  ;D
Avatar billede learner Praktikant
04. december 2008 - 10:02 #97
Godt jeg kan bidrage med lidt underholdning herinde :o)
Ja det er jo ikke alle knive der er lige skarpe...
Men en sløv kniv er dog bedre end ingen kniv ;o)

Lidt ramt er man vel...
Jeg kan godt se at det er nogle latterlige linier og har da os fjernet dem. Men bemærk dog det pæne sprog og den gode intention hvor jeg altid prøver at hjælpe mine brugere med at få en god oplevelse.

Når sandheden skal frem...
I virkeligheden kommer "trickset" du omtaler faktisk herindefra en tråd jeg deltog i for laaaaaaang tid siden. Så man kan evt grine lidt videre af ham eller hende :o)

Tak for hjælpen :o)

God Jul
Avatar billede tinem Novice
04. december 2008 - 10:37 #98
Nu blev du helt slået ud af olebole. :-)

Men hvad med mine spørgsmål?
Avatar billede learner Praktikant
04. december 2008 - 11:03 #99
tinem:

Anne Mette Jørsfeldt har designet sidens udseende for mig. Hun er dygtig og har rimelige priser så brug hende endelig hvis du får brug for en grafiker eller en fotograf. Derfor jeg anbefaler hende og linker til hende i bunden af siden.

Huggernet er faktisk ved at være en gammel dame. Ca 7-8 år gammel og under stadig udvikling/forbedring. Det er IKKE bygget på et CMS-system, men kodet af mig selv i PHP/MYSQL og lidt Javascript. Og siden er faktisk lige blevet sat sådan halvt til salg da jeg har nogle andre projekter som jeg har mere lyst til at arbejde med.
Avatar billede tinem Novice
04. december 2008 - 11:25 #100
Jeg er lidt nysgerrig efter at finde ud af, hvordan du bruger geocoder i dit system så folk selv kan indtaste deres oplysninger/adresser/koordinater. Jeg regner med at folk inkl. admin, så også selv har mulighed for at rette deres oplysninger?

Har prøvet at finde ud af hvem "learner" er uden held, for evt. at kontakte dig direkte om disse ting?
Avatar billede learner Praktikant
04. december 2008 - 11:42 #101
Det er ellers rimelig let at gå ind under informationer og så læse om hvem der står bag siden
Avatar billede olebole Juniormester
04. december 2008 - 15:34 #102
learner >> Jeg gik også udfra, det var noget, du havde sakset. Du må som sagt undskylde, jeg hyggede mig højt, men jeg kunne ikke lade være. Det var ikke dig, men koden jeg morede mig over.

- og så lang tid er det nu heller ikke siden, at jeg selv kunne have fundet på at sakse den slags til eget brug efter devisen: "Nåja, JavaScript er jo JavaScript - og det her ser da vældig pænt ud!"

God Jul  *<|;o)
Avatar billede learner Praktikant
04. december 2008 - 15:56 #103
Helt i orden du ;o)
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