05. december 2004 - 18:07Der er
6 kommentarer og 1 løsning
Blev siden refreshed?
Hey eksperter!
Jeg har brug for at vide, om brugeren har opdateret siden, fx ved et tryk på F5. Det skal bruges til at forhindre, at en hit counter bare tæller derudaf, når en bruger trykker refresh en masse gange.
Det skal foregå på denne måde, fordi den gerne må tælle op, hvis brugeren går hen på en anden side, og via et link kommer tilbage til siden.
if session("refreshed") = Request.ServerVariables("SCRIPT_NAME") then Response.Write "refreshed" else session("refreshed") = Request.ServerVariables("SCRIPT_NAME") Response.Write "not refreshed" end if
Hvis en bruger går hen på en anden side inden for samme web, og kommer tilbage til siden med counteren, må den gerne tælle op. Kun hvis brugeren decideret refresher siden, skal den ikke tælle op.
'denne kode skal være i toppen af ALLE sider. Hvis du har sider der ikke er asp, så dur denne metode ikke rigtigt. if Session("LastPage") = Request.ServerVariables("SCRIPT_NAME") then Response.Write("Siden er Refreshed") else Response.Write("Siden er ikke Refreshed") end if
Der er et antal måder at man kan refreshe siden på; F5, klik på opdater, højreklik > vælg Opdater, klikke på er link i et andet vindue der genindlæser siden.
Du kan ikke få at vide hvad der egentlig er sket, men med min metode kan du få at vide om brugeren har besøgt den samme side "to gange i træk"
Jeg fik selv den samme idé, men at skulle placere noget kode i toppen af alle sider, er for mig ikke en holdbar løsning, da der er virkelig mange sider, og kun denne ene skal tælle.
Havde håbet lidt på, at fx Request.ServerVariables eller noget lignende kunne give mig noget brugbart at arbejde med :)
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.