/ 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
Problemer med session og DB
Fra : AHR


Dato : 17-03-03 00:04

Hej NG

Hvordan får jeg en sessions-variabel ind i min SQL sætning?

I hvert fald ikke sådan ->

strSQL = "Select * from bruger where brugerid =
Request.Session("Brugerid")"

Tak



 
 
Jakob Andersen (17-03-2003)
Kommentar
Fra : Jakob Andersen


Dato : 17-03-03 00:15

AHR skrev:
> Hvordan får jeg en sessions-variabel ind i min SQL sætning?
> I hvert fald ikke sådan ->
>
> strSQL = "Select * from bruger where brugerid =
> Request.Session("Brugerid")"

Hvis Indeholdet af sessionen er et tal:
strSQL = "SELECT * FROM bruger WHERE brugerid = " & Session( "BrugerID" )

Hvis indeholdet af sessionen er en streng:
strSQL = "SELECT * FROM bruger WHERE brugerid = '" & Session( "BrugerID" ) & "'"

PS: Hvis du ikke skal bruge alle felterne skal du _ikke_ bruge SELECT * se evt.:
http://www.asp-faq.dk/article/?id=63

AHR (17-03-2003)
Kommentar
Fra : AHR


Dato : 17-03-03 09:46

> Hvis Indeholdet af sessionen er et tal:
> strSQL = "SELECT * FROM bruger WHERE brugerid = " & Session( "BrugerID" )

Mange tak. Det er en int, så jeg forsøger denne.

> Hvis indeholdet af sessionen er en streng:
> strSQL = "SELECT * FROM bruger WHERE brugerid = '" & Session( "BrugerID" )
& "'"

> PS: Hvis du ikke skal bruge alle felterne skal du _ikke_ bruge SELECT * se
evt.:

Den er jeg med på, men jeg har brug for alle felter



AHR (17-03-2003)
Kommentar
Fra : AHR


Dato : 17-03-03 09:57

> > strSQL = "SELECT * FROM bruger WHERE brugerid = " & Session(
"BrugerID" )
>
> Mange tak. Det er en int, så jeg forsøger denne.

Nu var jeg vist lidt for hurtig. Jeg får følgende fejl ved ovenstående:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in
query expression 'brugerid ='.

Kan du/i hjælpe igen



AHR (17-03-2003)
Kommentar
Fra : AHR


Dato : 17-03-03 10:05

> Nu var jeg vist lidt for hurtig. Jeg får følgende fejl ved ovenstående:
>
> Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
> [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator)
in
> query expression 'brugerid ='.
>
> Kan du/i hjælpe igen

Det virker alligevel. Der skal jo bare lige ldit data i brugerid, shit



Jens Gyldenkærne Cla~ (17-03-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 17-03-03 10:24

AHR skrev:

> Det virker alligevel. Der skal jo bare lige ldit data i
> brugerid, shit

Så har du netop fået demonstreret vigtigheden af at validere input
til databasekommandoer. Man bør altid - *altid* - lave en kontrol
af at de variable der indgår i en kommando er gyldige som input (fx
at et noget der skal være et tal rent faktisk _er_ et tal etc.)
--
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

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

Månedens bedste
Årets bedste
Sidste års bedste