/ 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
Split ødelægger mit tomt søgnings script
Fra : Mogens Dyhre Hansen


Dato : 17-01-01 22:12

Hej.

Jeg har lavet det er i flere omgange så det kan godt se lidt rodet ud, men
mit problem er at hvis man bare klikker søg knappen uden at skrive noget i
feltet så skulle den bare Response.Redirect("robotsearch.asp") men efter jeg
har lavet noget split (efter inspiration her fra gruppen) som så gør at der
søges på flere ord indtastet i søgfeltet og det virker godt nok selv om det
nok skal arbejdes en del med resultatet endnu.

Her er min kode

rstemp = Request.QueryString("rstemp")
rstemp = LTrim(Request("rstemp"))
rstemp = Replace(rstemp,"'","''")

If Len(rstemp) < 0 Then
' Hvis der ikke er skrevet i feltet
Response.Clear
Response.Redirect("robotsearch.asp")

Else
'Hvis der er skrevet i feltet
Search = Split(rstemp," ")
' Opbygger en dynamisk SQL streng
sqltemp = "SELECT noget1, helt2, eller3, humle4, kukkasse5, duks6 FROM
tablen WHERE"
sqltemp = sqltemp & " (noget1 LIKE '" & Search(0) & "')"
For n = LBound(Search)+1 To UBound(Search)
sqltemp = sqltemp & " OR (helt2 LIKE '" & Search(n) & "')"
sqltemp = sqltemp & " OR (humle3 LIKE '" & Search(n) & "')"
sqltemp = sqltemp & " OR (kukkasse4 LIKE '" & Search(n) & "')"
Next

Jeg vil skræklig gerne have at vide hvad jeg gør forkert og om min kode kan
tunes.






 
 
Mogens Dyhre Hansen (17-01-2001)
Kommentar
Fra : Mogens Dyhre Hansen


Dato : 17-01-01 22:19


"Mogens Dyhre Hansen" <mogens@remove.www.svend-bent.dk> skrev i en
meddelelse news:9451t3$5nd$1@news.inet.tele.dk...

Jeg kan da lige tilføje at fejlen som kommer se sådan ud

Microsoft VBScript runtime error '800a0009'
Subscript out of range: '[number: 0]'
/robotsearch.asp, line 114




Lauritz Jensen (17-01-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 17-01-01 22:37

Denne linie:
> For n = LBound(Search)+1 To UBound(Search)
Skal nok se sådan ud:
For n = 0 To UBound(Search)


--
Lauritz

Kim Jensen (19-01-2001)
Kommentar
Fra : Kim Jensen


Dato : 19-01-01 09:11

> If Len(rstemp) < 0 Then
> ' Hvis der ikke er skrevet i feltet

Prøv istedet med:

If Len(rstemp) =0 Then

....længden af en streng bliver aldrig mindre end nul, hvorfor dit kriterie
aldrig bliver opfyldt - og derfor sendes man ikke som ønsket til
"robotsearch.asp".


mvh
Kim Jensen



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408868
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste