Avatar billede jmy Nybegynder
26. april 2010 - 11:53 Der er 18 kommentarer og
3 løsninger

Script til søgning på æ ø og å hvis det kan lade sig gøre?

Hej
Jeg har taget søgestrengen fra eniro og krak og sat ind i min egen søgeboks, men problemet er, at når jeg søger på ord med æ, ø og å i, så findes der ikke noget resultat, men søger jeg med æ=ae, ø=oi og å=aa så virker det, men det er ikke hensigtsmæssigt.

Jeg har prøvet at ændre encoding til utf-8, men det er heller ikke en løsning, da søgemaskinen ligger på en side med en fast skabelon, så går det ud over æ, ø og å i skabelonen i stedet.

Jeg tænkte om der måske kan laves et javascript der kan ordne et sådan problem?

Er der nogen der kan hjælpe?
Avatar billede majbom Novice
26. april 2010 - 13:17 #1
hvad har du af kode?

du kan jo replace de specielle tegn inden de bliver sendt?
Avatar billede jmy Nybegynder
27. april 2010 - 09:03 #2
Her er koden til søgestrengen case 3:
      finalSearchString = "http://firma.eniro.dk/";
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + searchString + "&geo_area=";     
      }
      break;
     
      case 4:
      finalSearchString = "http://www.krak.dk/";
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + searchString + "&geo_area=";
      }
      break;

er det nok, eller skal du have hele koden?
Avatar billede majbom Novice
27. april 2010 - 12:16 #3
så det er bare når der er æ,ø eller å i din searchString de skal erstattes med hhv ae, oe eller aa?
Avatar billede jmy Nybegynder
27. april 2010 - 12:23 #4
Det virker med ae, oe og aa, men jeg vil gerne have det til at virke med æ, ø og å.:o)
Avatar billede majbom Novice
27. april 2010 - 18:07 #5
ja det er det jeg mener, så du vil have at når man skriver æøå i dit textfelt, bliver det lavet til aeoeaa inden den sender det videre?
Avatar billede majbom Novice
27. april 2010 - 18:08 #6
har du prøvet at url-encode strengen?

escape(searchString);
Avatar billede jmy Nybegynder
28. april 2010 - 10:44 #7
Nej det har jeg ikke, hvordan gør jeg?
Avatar billede Slettet bruger
28. april 2010 - 11:08 #8
Stik os et link, så vi selv kan prøve at søge
Avatar billede jmy Nybegynder
28. april 2010 - 11:15 #9
Avatar billede Slettet bruger
28. april 2010 - 11:32 #10
OK, så har splazz nok ret - du skal escape det som brugeren indtaster inden det sendes:

      case 3:
      finalSearchString = "http://firma.eniro.dk/"
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + escape(searchString)
      }
      break
   
      case 4:
      finalSearchString = "http://www.krak.dk/"
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + escape(searchString)
      }
      break

Det er i hvertfald let at teste : )
Avatar billede Slettet bruger
28. april 2010 - 11:37 #11
Alternativt encodeURI():

      case 3:
      finalSearchString = "http://firma.eniro.dk/"
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + encodeURI()(searchString)
      }
      break
 
      case 4:
      finalSearchString = "http://www.krak.dk/"
      if (searchStrNotEmpty) {
        finalSearchString += "query?what=cs&search_word=" + encodeURI()(searchString)
      }
      break
Avatar billede jmy Nybegynder
28. april 2010 - 11:48 #12
Super den første løsning virker tusind tak ;O) for hjælpen og ha' en god dag.
Avatar billede jmy Nybegynder
28. april 2010 - 11:49 #13
Super den første løsning virker tusind tak ;O) for hjælpen og ha' en god dag.
Avatar billede jmy Nybegynder
28. april 2010 - 11:52 #14
smider du et svar så jeg kan give dig point T4NK3R?
Avatar billede Slettet bruger
28. april 2010 - 12:12 #15
Det var faktisk splazz som gav dig svaret - så point'ene er hans/hendes
- men du kan jo gi' mig lidt for at skrive det med fed : )
Avatar billede jmy Nybegynder
28. april 2010 - 12:33 #16
splazz smider du også lige et svar så får i 100 hver ;o)
Avatar billede olebole Juniormester
28. april 2010 - 13:23 #17
<ole>

Hvis escape virker, har du formodentlig problemer med dit tegnsæt. Den funktion har været deprecated i adskillige år og er erstattet af encodeURIComponent.

Det skyldes, at ANSI (iso-8859-1) i dag er forældet. Nu bruger man utf-8 i stedet - og det er ikke nok at skifte meta'en i HTML-dokumentet. Du skal også sørge for, at dokumentets indhold faktisk er unicode - og at dokumentet er gemt som utf-8  ;o)

/mvh
</bole>
Avatar billede majbom Novice
29. april 2010 - 23:12 #18
-> ole - okay, det var jeg ikke klar over... (der er lige et par filer jeg skal have rettet så :s hehe...)

ja, lad os dele :)
Avatar billede olebole Juniormester
05. maj 2010 - 10:55 #20
Tak for points  =)
Avatar billede majbom Novice
05. maj 2010 - 11:00 #21
tfp :)
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