/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
kodeeksempel på søgefunktion søges
Fra : Christian M. Nielsen


Dato : 10-10-04 08:15

Jeg er ved at udbygge søgefunktionen til min hjemmeside.

Der er ingen problem med at søge på et ord. To og flere går også fint så
længe de står ved siden af hinanden. Hvis man søger på to ord der ikke står
ved siden af hinanden, så bliver det lidt mere tricket. Jeg går ud fra at
man skal splitte søgeresultatet op og så have lavet en dynamisk sql sætning,
men jeg er lidt på bar bund mht. begge dele. Er der nogen der kender en url
med et eksempel, eller evt. har en stump kode jeg kan se og modificere til
min egen side?

--

Mvh Christian http://www.cmnielsen.dk
What capital has 164 letters in its name? See my web page to find out.
Nyeste Artikel : Crenicichla compressiceps.
http://cmnielsen.dk/crenicichla.htm
The scary thing about looking for truth is that you might find it.




 
 
Jonas Schmeltz Aaber~ (10-10-2004)
Kommentar
Fra : Jonas Schmeltz Aaber~


Dato : 10-10-04 13:47

> Jeg er ved at udbygge søgefunktionen til min hjemmeside.
>
> Der er ingen problem med at søge på et ord. To og flere går også fint så
> længe de står ved siden af hinanden. Hvis man søger på to ord der ikke
står
> ved siden af hinanden, så bliver det lidt mere tricket. Jeg går ud fra at
> man skal splitte søgeresultatet op og så have lavet en dynamisk sql
sætning,
> men jeg er lidt på bar bund mht. begge dele. Er der nogen der kender en
url
> med et eksempel, eller evt. har en stump kode jeg kan se og modificere til
> min egen side?

Det er - som du selv siger - noget med at splitte din streng til et array,
og med et loop tilføje i sql-strengen:

<%
Function SQLString()
Dim strSoegeOrd, arrSoegeOrd, strSQL, iCount
strSoegeOrd = Request.QueryString("soeg")

arrSoegeOrd = Split(strSoegeOrd," ")

strTempSQL = "SELECT ID, SideTitel, URL, Hits, Etc From Tabel1 " _
"WHERE SoegeOrd LIKE '%" & arrSoegeOrd(0) &_
"%'"

For iCount = 1 To UBound(arrSoegeOrd)
strTempSQL = strTempSQL & " OR SoegeOrd LIKE '%" & arrSoegeOrd(iCount) &
"%'"
Next

SQLString = strTempSQL
End Function

strSQL = SQLString()

%>

Håber det virker - har ikke testet.

MVH Jonas (aka Juke)



Yoda.dk - Lars (10-10-2004)
Kommentar
Fra : Yoda.dk - Lars


Dato : 10-10-04 17:53

Du kunne også bare erstatte alle mellemrum i den tekst du får fra
tekstfeltet med %

sådan at hvis man skriver "hej med dig" at det så bliver til "hej%med%dig"

så vil den fange de stedet hvor der også står eksempelvis "hejsa.. jeg går
en tur med digiboxen"

--
Venlig hilsen
Lars Andersen



"Jonas Schmeltz Aaberg" <julledyret@hotmail.com> wrote in message
news:41692f44$0$59405$14726298@news.sunsite.dk...
> > Jeg er ved at udbygge søgefunktionen til min hjemmeside.
> >
> > Der er ingen problem med at søge på et ord. To og flere går også fint så
> > længe de står ved siden af hinanden. Hvis man søger på to ord der ikke
> står
> > ved siden af hinanden, så bliver det lidt mere tricket. Jeg går ud fra
at
> > man skal splitte søgeresultatet op og så have lavet en dynamisk sql
> sætning,
> > men jeg er lidt på bar bund mht. begge dele. Er der nogen der kender en
> url
> > med et eksempel, eller evt. har en stump kode jeg kan se og modificere
til
> > min egen side?
>
> Det er - som du selv siger - noget med at splitte din streng til et array,
> og med et loop tilføje i sql-strengen:
>
> <%
> Function SQLString()
> Dim strSoegeOrd, arrSoegeOrd, strSQL, iCount
> strSoegeOrd = Request.QueryString("soeg")
>
> arrSoegeOrd = Split(strSoegeOrd," ")
>
> strTempSQL = "SELECT ID, SideTitel, URL, Hits, Etc From Tabel1 " _
> "WHERE SoegeOrd LIKE '%" & arrSoegeOrd(0) &_
> "%'"
>
> For iCount = 1 To UBound(arrSoegeOrd)
> strTempSQL = strTempSQL & " OR SoegeOrd LIKE '%" & arrSoegeOrd(iCount) &
> "%'"
> Next
>
> SQLString = strTempSQL
> End Function
>
> strSQL = SQLString()
>
> %>
>
> Håber det virker - har ikke testet.
>
> MVH Jonas (aka Juke)
>
>



Jens Gyldenkærne Cla~ (10-10-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 10-10-04 22:07

Yoda.dk - Lars skrev:

> sådan at hvis man skriver "hej med dig" at det så bliver til
> "hej%med%dig"

Der bør nok også sættes jokertegn i starten og slutningen:
"%hej%med%dig%". Men et match kræver så at søgeordene optræder i
rækkefølge.

NB: Læs gerne min signatur.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Christian M. Nielsen (14-10-2004)
Kommentar
Fra : Christian M. Nielsen


Dato : 14-10-04 18:04

"Jonas Schmeltz Aaberg" <julledyret@hotmail.com> wrote in message
news:41692f44$0$59405$14726298@news.sunsite.dk...

> Det er - som du selv siger - noget med at splitte din streng til et array,
> og med et loop tilføje i sql-strengen:
>
> <% Function SQLString()

SNIP

> End Function

> Håber det virker - har ikke testet.

Det virker perfekt, jeg vil forsøge at arbejde videre med split delen.

Tak for hjælpen.


--

Mvh Christian http://www.cmnielsen.dk
What capital has 164 letters in its name? See my web page to find out.
Nyeste Artikel : Crenicichla compressiceps.
http://cmnielsen.dk/crenicichla.htm
The scary thing about looking for truth is that you might find it.



Søg
Reklame
Statistik
Spørgsmål : 177548
Tips : 31968
Nyheder : 719565
Indlæg : 6408803
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste