webForumDet fria alternativet

Jag vill göra en sökfunktion

ASP

12 svar · 905 visningar · startad av hildurblad

Medlem sedan maj 2003107 inlägg
Frågan#1

Hej,

Jag skulle vilja göra en sökfunktion liknande den som finns på nedanstående adress.

http://www.tv4.se/visa/?innehall=/antligenhemma/searchtip.aspx

Eftersom jag inte gjort något med hjälp av ASP tidigare så behöver jag lite hjälp på traven. Hur skall jag börja? Nån sida som behandlar detta?
Hur gör man i själva "textsidorna" för att registrera vilka ord som skall ge resultat på sökningen?

Nån som förstår hur jag menar?
Vore som sagt snällt med lite hjälp så jag iaf vet vart/hur jag skall börja.

Medlem sedan apr. 20031 660 inlägg
#2

HEJ!

Har du inte gjort något tidigare i asp har vi ett litet problem, denna sökfunktion bygger på att allt ligger i en databas.
Givetvis finns det ett otal sökmotorer att skaffa på nätet, fristånde eller integrerade, tex google.
Dessa behöver ingen databas, men då får du inte heller dd-listorna.

Du är säkert van vid * och ?, i VB används endast %.

SELECT * FROM artikel WHERE innehall LIKE '%" & vadduletarefter & "%'

I detta fall söks på valfri text som börjar, innehåller eller slutar på ordet, tex "sex": insexnyckel, sexkantig eller insex.
Ta bort första/sista % och du får endast sexkantig alt insex.

Att sedan lägga till kategorier av olika slag handlar om att välja detta på något sätt (dd, radio, chkbox) när artikeln läggs in i adminet, och att anpassa söksträngen ovan.

Medlem sedan maj 2003107 inlägg
#3

Okej, nu tror jag att jag förstår principen, även om jag inte har lyckats fatta ännu hur jag skall skriva för att få till det. Återkommer när jag behöver ytterligare hjälp på traven, alltså när jag har tillräckligt med kunskap för att ställa följdfrågor.

Tack så länge!

Medlem sedan maj 2003107 inlägg
#4

Vad är fördelen/nackdelen?

Jag surfade runt lite och hittade instruktioner hur man gör en sökfunktion med hjälp av JavaScript.
http://internetworld.idg.se/tjanster/webbskolan/sokmotor/

Vilket är bäst? En sökfunktion med JavaScript eller med asp? Fördelar/nackdelar? Vilket är lättast att bygga ut?

Tack så länge!

Medlem sedan apr. 20031 660 inlägg
#5

HEJ!

Använd denna, då slipper du blanda in databas, eftersom du inte har det.
Själva sökningen är inte det svåra när du använder databas.
Att göra en databasdriven webbplats är att bygga webben från början igen, mer eller mindre. (Beronde på om du använder samma layout etc)

Javascriptsökning innebär att du manuellt kopplar text mot sida, dvs du måste uppdatera ditt sökscript när texter ändrar sig.
Inget problem om endast du själv ändrar texter/sidor, men värre om andra kan skriva in text, då måste du kontrollera texterna och uppdatera sökorden.

Sökmotorn bygger på att du själv indexerar de sidor som du vill att sökmotorn ska kunna hitta. För varje sådan sida skapar du en vektor innehållande dess adress samt vilka nyckelord som ska kopplas ihop med sidan.

Medlem sedan maj 200010 687 inlägg
#6

J.N. skrev:

Du är säkert van vid * och ?, i VB används endast %.

SELECT * FROM artikel WHERE innehall LIKE '%" & vadduletarefter & "%'

I VB? Ta en titt på koden du skrivit en gång till så ser du att själva sökningen inte görs av VB. Det enda VB gör där är att konkatenera.

Medlem sedan maj 2003107 inlägg
#7

Om jag har förstått det hela rätt... om jag själv skall sköta alla uppdateringar och därför har möjlighet att ändra/lägga till sökord så kan jag lika gärna använda mig av en sökfunktion med JavaScript. Eller!?

Medlem sedan apr. 20031 660 inlägg
#8

HEJ!

Exakt!
Det kan du göra ändå, men om du har många som skriver, blir det mycket uppdateringar av sökfunktionen också.

Erik Juhlin skrev:

J.N. skrev:
--------------------------------------------------------------------------------
Du är säkert van vid * och ?, i VB används endast %.

SELECT * FROM artikel WHERE innehall LIKE '%" & vadduletarefter & "%'
--------------------------------------------------------------------------------
I VB? Ta en titt på koden du skrivit en gång till så ser du att själva sökningen inte görs av VB. Det enda VB gör där är att konkatenera.

Är det inte lite fel från din sida?
Det är ju inte % som konkatenerar strängen, utan &?
Sedan är det inte heller vb/asp som söker, det är ju sql:en, som behöver % för att kunna söka, och sedan presenteras resultatet i html via vb/asp.

Om man nu ska vara noggrann, och varför ska man inte vara det!

Medlem sedan juni 200032 967 inlägg
#9

Om man ska vara noggrann har inte VB ett enda dugg med det här att göra. VBScript däremot, i desto högre grad.

% har inte ett dugg med scriptspråket vi använder att göra, utan är bara en del av ett stränginnehåll. Det vi gör med VBScript är att konkatenera ihop en SQL-fråga, en sträng. Vad den innehåller är för VBScript-motorn och ASP-tolken egentligen totalt ointressant.

Ja, man ska vara noggrann, men man ska också vara korrekt. ;)

Medlem sedan apr. 20031 660 inlägg
#10

HEJ!

VB är lika med VBScript, det satte jag helt felaktigt som samma sak, fast jag vet att det inte är det. :(

Varför ska man vara korrekt när man är noggrann! :e

Medlem sedan maj 2003107 inlägg
#11

Intressant diskussion, även om jag inte riktigt hänger med. Men så småningom lär jag nog fatta vad ni försöker reda ut. :)

Förresten, med en sökning med hjälp av JavaScript, går det då att dela upp sökningen i "två nivåer", dvs. valfritt sökord och val av kategori? (Liknande exemplet som länken i första inlägget).

Tack för hjälpen!

Medlem sedan mars 20033 686 inlägg
#12

hildurblad: Tja, det går väl. Men en sökfunktion gjord i JavaScript är inte att rekommendera. En JavaScript-sökmotor måste ha alla ord som skall finnas med i sökmotorn indexerade i koden. Om du gör den med ett scriptspråk använder du som sagt databas, vilket är mycket smidigare.

Medlem sedan maj 2003107 inlägg
#13

Hmmm... alltså är en sökfunktion i JavaScript bara en "tillfällig lösning" som skulle gå fortare att få igång, men... jag vill göra det ordentligt redan från början eftersom det är tänkt att det är ganska mycket material som det skall kunna sökas bland. Dessutom är det nödvändigt att jag skall kunna söka i flera nivåer.
Jag får nog ta tjuren vid hornen och lära mig att göra en sökfunktion som använder en databas.
Återkommer!

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)