Avatar billede psyclown Nybegynder
19. juni 2002 - 17:17 Der er 9 kommentarer og
1 løsning

syntax error

Jeg kan ikke rigtigt se hvad der er ivejen med dette her.

Set rsedit = Server.CreateObject("ADODB.RecordSet")                       
strSQL = "SELECT * FROM Users WHERE UsrID="& Session("AdminID")
rsedit.open strSQL, DSN, 1, 3

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
    rsedit("Password") = Server.HTMLEncode(Request.Form("Password"))
    rsedit("Firstname") = Server.HTMLEncode(Request.Form("Firstname"))
    rsedit("Surname") = Server.HTMLEncode(Request.Form("Surname"))
    rsedit("Alias") = Server.HTMLEncode(Request.Form("Alias"))
    rsedit("Birthdate") = Server.HTMLEncode(Request.Form("Birthdate"))
    rsedit("Country") = Server.HTMLEncode(Request.Form("Country"))
    rsedit("City") = Server.HTMLEncode(Request.Form("City"))
    rsedit("ICQ") = Server.HTMLEncode(Request.Form("ICQ"))                   
    rsedit("Email") = Server.HTMLEncode(Request.Form("Email"))   
    rsedit("Homepage") = Server.HTMLEncode(Request.Form("Homepage"))
    rsedit("Connection") = Server.HTMLEncode(Request.Form("Connection"))
    rsedit("Favmap") = Server.HTMLEncode(Request.Form("Favmap"))
    rsedit("Favweapon") = Server.HTMLEncode(Request.Form("Favweapon"))
    rsedit("Pcspec") = Server.HTMLEncode(Request.Form("Pcspec"))
    rsedit("Bio") = Server.HTMLEncode(Request.Form("Bio"))
    rsedit("Signature") = Server.HTMLEncode(Request.Form("Signature"))
    rsedit.Update
    response.redirect "preferences.asp"
End If

Jeg får følgende fejl i SQL strengen:
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'UsrID='.

På forhånd tak!
Avatar billede spectual Nybegynder
19. juni 2002 - 17:18 #1
Det skulle da aldrig være fordi at Session ("AdminID") er tom?
Avatar billede spectual Nybegynder
19. juni 2002 - 17:19 #2
Du kan tjekke om en variabel er blevet sat med:

if isEmpty ( Session ("AdminID") ) then response.write "LOG IN!":response.end
Avatar billede medions Nybegynder
19. juni 2002 - 17:20 #3
Set rsedit = Server.CreateObject("ADODB.RecordSet")                       
strSQL = "SELECT * FROM Users WHERE UsrID='"& Session("AdminID") & "'"
rsedit.open strSQL, DSN, 1, 3

If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
    rsedit("Password") = Server.HTMLEncode(Request.Form("Password"))
    rsedit("Firstname") = Server.HTMLEncode(Request.Form("Firstname"))
    rsedit("Surname") = Server.HTMLEncode(Request.Form("Surname"))
    rsedit("Alias") = Server.HTMLEncode(Request.Form("Alias"))
    rsedit("Birthdate") = Server.HTMLEncode(Request.Form("Birthdate"))
    rsedit("Country") = Server.HTMLEncode(Request.Form("Country"))
    rsedit("City") = Server.HTMLEncode(Request.Form("City"))
    rsedit("ICQ") = Server.HTMLEncode(Request.Form("ICQ"))                   
    rsedit("Email") = Server.HTMLEncode(Request.Form("Email"))   
    rsedit("Homepage") = Server.HTMLEncode(Request.Form("Homepage"))
    rsedit("Connection") = Server.HTMLEncode(Request.Form("Connection"))
    rsedit("Favmap") = Server.HTMLEncode(Request.Form("Favmap"))
    rsedit("Favweapon") = Server.HTMLEncode(Request.Form("Favweapon"))
    rsedit("Pcspec") = Server.HTMLEncode(Request.Form("Pcspec"))
    rsedit("Bio") = Server.HTMLEncode(Request.Form("Bio"))
    rsedit("Signature") = Server.HTMLEncode(Request.Form("Signature"))
    rsedit.Update
    response.redirect "preferences.asp"
End If

Prøv lige med denne!

//>Rune
Avatar billede spectual Nybegynder
19. juni 2002 - 17:22 #4
tjae rune.. så forudsætter du at hans UsrID felt i databasen er en streng
og da den hedder ID er det knap så sandsynligt.
Avatar billede spectual Nybegynder
19. juni 2002 - 17:22 #5
med mindre det da er et brugernavn der menes
Avatar billede psyclown Nybegynder
19. juni 2002 - 17:23 #6
hvis jeg bruger din medions, så skriver den:

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
Avatar billede spectual Nybegynder
19. juni 2002 - 17:25 #7
Se min kommentar
Avatar billede spectual Nybegynder
19. juni 2002 - 17:26 #8
Sæt min linje ind:

if isEmpty ( Session ("AdminID") ) then response.write "LOG IN!":response.end

lige før:

Set rsedit = Server.CreateObject("ADODB.RecordSet")

og se om den skriver "LOG IN!"
Avatar billede medions Nybegynder
19. juni 2002 - 17:28 #9
spectual> Det behøver du ikke fortælle mig!

psyclown> Hmm. ok..

//>Rune
Avatar billede psyclown Nybegynder
19. juni 2002 - 17:28 #10
jeg sidder bare og sover lidt, jeg havde bare glemt at logge ind, fordi at jeg havde linket liggende fra igår, men tak for påmindelsen spectual, nu laver jeg nok ikke den fejl igen :)
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