Avatar billede jeppe_hansen Nybegynder
21. juli 2002 - 23:41 Der er 34 kommentarer og
1 løsning

Request.Querystring til tal-værdi?

Hej!

Jeg vil bruge en Request.Querystring til at idetificere en bruger i en database med Where Id = Request.Querystring, men jeg har opdaget at den læser en querystring som tekst selv om den er en  ren talværdi. Hvordan "oversætter" eller fortller jeg asp at den værdi er en talværdi?
Avatar billede loukas Mester
21. juli 2002 - 23:43 #1
Du kan prøve med:
Where Id = CInt(Request.Querystring)
Avatar billede medions Nybegynder
21. juli 2002 - 23:43 #2
Skriver CInt(Request.QueryString("ID"))

CInt = Convert to Int

//>Rune
Avatar billede esoulman Nybegynder
21. juli 2002 - 23:44 #3
I sql statement skal du bruge "... where id = `TAL`.."
Men det er måske ik det du mener?
Avatar billede jeppe_hansen Nybegynder
21. juli 2002 - 23:44 #4
Microsoft VBScript compilation (0x800A03EE)
Expected ')'
Avatar billede loukas Mester
21. juli 2002 - 23:46 #5
OK, der manglede lige en ) prøv igen :-)
Where Id = CInt(Request.Querystring))
Avatar billede medions Nybegynder
21. juli 2002 - 23:47 #6
jeppe_hansen> Du har vidst ik' prøvet mit...

//>Rune
Avatar billede loukas Mester
21. juli 2002 - 23:48 #7
hov nu vrøvler jeg vidst !!
Må vi få lidt mere kode at gøre med ??
Avatar billede jeppe_hansen Nybegynder
21. juli 2002 - 23:48 #8
Rune, din er jo den samme som loukas'
Avatar billede loukas Mester
21. juli 2002 - 23:50 #9
nej det er ikke den samme :-)
Avatar billede medions Nybegynder
21. juli 2002 - 23:50 #10
Nope! -Jeg har en parantes mere...

//>Rune
Avatar billede neteffect Nybegynder
21. juli 2002 - 23:50 #11
Er der noget problem?
Det er jo ikke asp, der læser din query. ODBC-driveren får query'en som en tekststrng, og derfor er det helt ok at bruge "WHERE id=" & request("ID")
Avatar billede jeppe_hansen Nybegynder
21. juli 2002 - 23:51 #12
("Update Test Set test = 'test' Where Id = CInt(Request.QueryString("ID"))")
Avatar billede medions Nybegynder
21. juli 2002 - 23:53 #13
Hmm er dit ID felt af typen tal?

//>Rune
Avatar billede jeppe_hansen Nybegynder
21. juli 2002 - 23:55 #14
Ja, det er Autonummerering.
Avatar billede neteffect Nybegynder
21. juli 2002 - 23:57 #15
Der er ingen grund til at konvertere.
Avatar billede loukas Mester
21. juli 2002 - 23:57 #16
Hvad kommer der af fejl ???
Avatar billede medions Nybegynder
21. juli 2002 - 23:58 #17
Hmmm så lyder det lidt rimelig underligt..! -prøv at Execute din SQL på en anden måde...

Altså:
Conn.Execute ("Update Test Set test = 'test' Where Id = CInt(Request.QueryString("ID"))")
Skal så være
strSQL = "Update Test Set test = 'test' Where Id =" CInt(Request.QueryString("ID"))"

//>Rune
Avatar billede medions Nybegynder
21. juli 2002 - 23:59 #18
I det heletaget tror jeg bare det er pga. du har glemt en "

Conn.Execute ("Update Test Set test = 'test' Where Id =" CInt(Request.QueryString("ID")))

//>Rune
Avatar billede medions Nybegynder
22. juli 2002 - 00:00 #19
strSQL = "UPDATE test SET test = 'test WHERE id =" & Request.QueryString("ID")
Conn.Execute(strSQL)

sådan...

//>Rune
Avatar billede killer_r Nybegynder
22. juli 2002 - 00:00 #20
Hvad med sådan:

("Update Test Set test = 'test' Where Id = " & CInt(Request.QueryString("ID")))
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:02 #21
Er du sikker på at: Id =" Er rigtigt, for den skriver "Expected end of statement"
Avatar billede loukas Mester
22. juli 2002 - 00:03 #22
arrgh !!
HeHE
Avatar billede medions Nybegynder
22. juli 2002 - 00:05 #23
jeppe_hansen> Hvem skriver du til?

//>Rune
Avatar billede neteffect Nybegynder
22. juli 2002 - 00:06 #24
hedder både tabellen og feltet "test"?
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:08 #25
Og, hør her gutter! Kan I ikke teste dem før i sender dem afsted? Bare giv mig et eksempel på hvordan man laver en "Where Id = Request.Querystring("ID")"
Og feltet Id er i databasen et Tal felt!
Avatar billede medions Nybegynder
22. juli 2002 - 00:09 #26
Egentlig kan det oxo være at test er et reseveret ord i Access! Så prøv med:
strSQL = "UPDATE [test] SET [test] = 'test' WHERE id =" & Request.QueryString("ID")
Conn.Execute(strSQL)


//>Rune
Avatar billede medions Nybegynder
22. juli 2002 - 00:10 #27
strSQL = "SELECT * FROM tabel WHERE id =" & Request.QueryString("id")
Conn.Execute(strSQL)

Den her er normal!
//>Rune
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:11 #28
Det er ikke test i skal tænke på! Det er bare noget jeg har digtet, det jeg skal bruge er: Where Id = Request.Querystring("ID")

Prøver lige din Rune....
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:13 #29
Rune>> Syntax error (missing operator) in query expression 'id ='.
Avatar billede medions Nybegynder
22. juli 2002 - 00:14 #30
Du er nødt til at adskille SQL og ASP fra hinanden, da det er 2 forskellige ting...

WHERE Id =" & Request.QueryString("ID")
sådan..

//>Rune
Avatar billede medions Nybegynder
22. juli 2002 - 00:15 #31
I hvilken en af dem? -og er du sikker på at din QueryString indeholder noget?

strSQL = "UPDATE test SET test = 'test' WHERE id =" & Request.QueryString("ID")
Conn.Execute(strSQL)

//>Rune
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:16 #32
Rune, nu virker det! Mange tak for hjælpen! Men du kender ikke en kode der kan tvinge en streng til at blive tolket som et tal? Gør CInt det?
Avatar billede medions Nybegynder
22. juli 2002 - 00:16 #33
jeppe_hansen> Det gør CInt()

//>Rune
Avatar billede jeppe_hansen Nybegynder
22. juli 2002 - 00:18 #34
ok, mange tak!
Avatar billede medions Nybegynder
22. juli 2002 - 00:19 #35
Anytime!
Thx 4 Poinz

//>Rune
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