Om man har en sida där man skickar med t.ex. ett id i en querystring via urlen för att sedan på sidan hämta info med det id:t från en databas, hur ska man bäst fixa så att det inte blir någon felsida ifall någon busig ändrar på querystringen till något annat ogiltigt värde?
Jag använder mig av Vides statistik där besökaren loggas i Session_Onstart. Jag har även ett inloggningssystem som jag helst vill använda Session.Abandon när man loggar ut men då plussas ju räknaren på när besökaren loggar ut. Går det att lösa på något sätt? Just nu tar jag bara bort de Sessionerna som jag använder för min login föra att detta inte ska ske.
'din sql fråga
SQL = "Select * From Tabell Where id = "&request.querystring("värde")&
'det måste finnas ett rs objekt eller så döper du om det
rs.open SQL,Conn
If rs.EOF then
Response.write " Ej du, inte ändra sådär "
Else
'din hämtningskod
Det funkar ju inte ifall någon t.ex. tar bort querystringen. Då blir det ju fel i SQL-satsen och fel på sidan. Men det enda är väl att först kolla ifall querystringen innehåller något värde och är numeriskt och sen köra sql-satsen och kolla ifall den finns med i datbasen, eller?
Skojigt fel:
Syntaxfel (operator saknas) i frågeuttrycket 'fldForumID ='.
kör kollen innan sql-frågan och spar querystringen i en variabel istället. Finns det inget i querystringen sätt värdet i variabeln till 0.
Typ:
'## -- checka om det finns ngn querystring --
intId = request.querystring("värde")
If Len(intId) = 0 Then intId = 0
'din sql fråga
SQL = "Select * From Tabell Where id = " & intId
'det måste finnas ett rs objekt eller så döper du om det
rs.open SQL,Conn
If rs.EOF then
Response.write " Ej du, inte ändra sådär "
Else
'din hämtningskod