Avatar billede software Nybegynder
27. maj 2002 - 13:44 Der er 9 kommentarer og
1 løsning

FEJL !!!!

Når jeg kører dette script:

<%

strSQL = "Select kategori1, kategori2, kategori3, kategori4, kategori5 From Tabel1 Where = "
strSQL = strSQL & " (kategori1 LIKE '%" & Request.Form("kategori") & "%')"
strSQL = strSQL & " OR (kategori2 LIKE '%" & Request.Form("kategori") & "%')"
strSQL = strSQL & " OR (kategori3 LIKE '%" & Request.Form("kategori") & "%')"
strSQL = strSQL & " OR (kategori4 LIKE '%" & Request.Form("kategori") & "%')"
strSQL = strSQL & " OR (kategori5 LIKE '%" & Request.Form("kategori") & "%')"

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "Driver={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN

Set rs = Conn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
    Response.Write "<p>Søgeresultat</p>"
    Response.Write "<table border=1>"
    Response.Write "<tr><th>kategori1</th><th>kategori2</th><th>kategori3</th><th>kategori4</th><th>kategori5</th></tr>"
    Do While Not rs.EOF
        Response.Write "<tr><td>" & rs("kategori1") & "</td>"
        Response.Write "<td>" & rs("kategori2") & "</td>"
        Response.Write "<td>" & rs("kategori3") & "</td>"
        Response.Write "<td>" & rs("kategori4") & "</td>"
        Response.Write "<td>" & rs("kategori5") & "</td></tr>"
        rs.MoveNext
    Loop
    Response.Write "</table>"
Else
    Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If

Conn.Close
Set Conn = Nothing
%>

får jeg følgende fejl:

Der opstod en Microsoft VBScript-kørselsfejl (0x800A01FB)
Der er opstået en undtagelse: 'Form'
/site_2/soegtest2.asp, line 10

Hvorfor ??
Avatar billede -mundi- Nybegynder
27. maj 2002 - 13:47 #1
"Select kategori1, kategori2, kategori3, kategori4, kategori5 From Tabel1 Where = "

where= er ikke en gyldig syntax

du skal bare skrive where
Avatar billede software Nybegynder
27. maj 2002 - 13:49 #2
Jeg får samme fejl !!
Avatar billede -mundi- Nybegynder
27. maj 2002 - 14:04 #3
Kan du ikke lige skrive din SQL streng ud ?
Avatar billede software Nybegynder
27. maj 2002 - 15:15 #4
Jeg har prøvet med dette:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "Driver={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN

strSQL = "Select " & Request.Form("kategori") & "From Tabel1 Where " & Request.Form("kategori") & "Like " & Request.Form("tekstfelt")

Set rs = Conn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
    Response.Write "<p>Søgeresultat</p>"
    Response.Write "<table border=1>"
    Response.Write "<tr><th>kategori1</th><th>kategori2</th><th>kategori3</th><th>kategori4</th><th>kategori5</th></tr>"
    Do While Not rs.EOF
        Response.Write "<tr><td>" & rs("kategori1") & "</td>"
        Response.Write "<td>" & rs("kategori2") & "</td>"
        Response.Write "<td>" & rs("kategori3") & "</td>"
        Response.Write "<td>" & rs("kategori4") & "</td>"
        Response.Write "<td>" & rs("kategori5") & "</td></tr>"
        rs.MoveNext
    Loop
    Response.Write "</table>"
Else
    Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If

Conn.Close
Set Conn = Nothing
%>

og får nu følgende fejl:

Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket "kategori2From Tabel1 Where kategori2Like navn2a".
Avatar billede tobby Nybegynder
27. maj 2002 - 15:18 #5
strSQL = "Select " & Request.Form("kategori") & " From Tabel1 Where " & Request.Form("kategori") & "Like " & Request.Form("tekstfelt")

- der manglede lige et mellemrum ;)
Avatar billede tobby Nybegynder
27. maj 2002 - 15:19 #6
strSQL = "Select " & Request.Form("kategori") & " From Tabel1 Where " & Request.Form("kategori") & " Like " & Request.Form("tekstfelt")

- ups - 2 mellemrum
Avatar billede software Nybegynder
28. maj 2002 - 10:03 #7
Nu får jeg følgende:

Der er for få parametre. Der var ventet 1.
Avatar billede -mundi- Nybegynder
28. maj 2002 - 10:06 #8
Prøv at skrive din sqlStreng ud istedet

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "Driver={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("db1.mdb")
Conn.Open DSN

strSQL = "Select " & Request.Form("kategori") & "From Tabel1 Where " & Request.Form("kategori") & "Like " & Request.Form("tekstfelt")

response.write strSQL
response.end
Avatar billede software Nybegynder
28. maj 2002 - 10:22 #9
Så får jeg:

Select kategori2 From Tabel1 Where kategori2 Like navn2
Avatar billede software Nybegynder
28. maj 2002 - 10:57 #10
Jeg prøver at finde på noget andet.

Ellers tak for hjælpen.
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
Kurser inden for grundlæggende programmering

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