Hej Som jag uppfattar det är du ororlig för att användar spara över sin information med gammal data som liger i url historiken, eller råkar posta ett inlägg igen. Som tidigare nämnt, HTTP_REFERER är ingen god idé. Finns ett roligt inlägg på thedailywtf.com som tar upp en implementation som påminer lite om den här: Jag löste det genom att köra en liten koll på vad submitknappens värde är.Använda HTTP Referer, bra lösning?
Sitter och pillar ihop en liten site.
Använder mig av mycket includes på mina sidor, ex:
index.asp
Select Case Request.Querystring("page")
Case "profile"
'Include profile.asp
End Select
Jag använder även Querystrings för diverse saker på sidan profile, ex action, medlemsid etc.
Detta innebär att adressen blir www.minsida.com/index.asp?page=profile&action=edit&memeberid=1&secaction=save osv osv.
Efter att ha browsat omkring en del på siten så sparas ju all dessa sidor som history i adressfältet.
Är lite rädd att någon medlem som börjar skriva www.minsida....
råkar få en annan sida, ex den ovan.
Är personen inte inloggad spelar det inte så stor roll eftersom man blir vidareskickad till en "Ej inloggad" sida, men om man är inloggad så uppdateras profilen (utan att man bett om det så att säga och då med tomma fält).
Kom därför på att man kanske skulle använda sig av Request.ServerVariables("HTTP_REFERER") och på så vis ta reda på om personen kommer från någon sida på siten eller kommer från något annat ställe.
Så i profile.asp kunde jag ha en liten koll:
If Request.Querystring("action") = "edit" Then
If Request.ServerVariables("HTTP_REFERER") = 'minsite..... Then
Uppdatera
Else
Skicka till profile.asp utan några querystrings.
End if
End if
Kan detta fungera eller har ni någon annan bra lösning?
// MikaelSv: Använda HTTP Referer, bra lösning?
Detta för att värdena ligger i urlsringen?
Är det de du oroar dig för?Sv: Använda HTTP Referer, bra lösning?
Om du postar all data genom en POST har du ingenting att vara rädd för eftersom en postning inte sparas i urlhistoriken.
Har du däremot värden och allt annat som skickas genom url så blir det problem. Data tycker jag ska postas, inte skickas med get.Sv: Använda HTTP Referer, bra lösning?
http://thedailywtf.com/forums/thread/65998.aspxSv:Använda HTTP Referer, bra lösning?
Precis som ovan nämnde med att ha ett hidden fält.
If Request.Form("minknapp") = "Save / Update" Then
'Funktionsanrop
End if
Tack för era svar... kul med lite tips och åsikter.
// MA