Most web sites heavily rely on client-side cookies. For example, ASP Sessions can work correctly only if the browser allows temporary cookies (that are not stored on disk). ASP doesn't provide any native method to understand whether cookies are enabled or not, but you can use the following code:
If Request.QueryString("Trying") = "" Then
' this is the first time this page has been called
' set a cookie and redirect to this same page
Response.Cookies("TryingCookie") = "ON"
Response.Redirect Request.ServerVariables("URL") & "?Trying=ON"
' we got here because of the redirection
if Request.Cookies("TryingCookie") = "" Then
' cookies aren't supported - display an error message and exit
Response.Write "Sorry, you need to enable cookies to display this " _
' clear the trying cookie (optional)
Response.Cookies("TryingCookie") = ""
' the rest of the page is executed only if the client browser supports
Welcome to this web site. <P>
Please remember not to disable cookie
support before visiting this site.
The above code works as follows: the first time the client requests this page, the ASP code attempts to create a client-side cookie named TryingCookie
(any name will do, of course), then redirects the browser to the same page, this time adding a Trying
argument on the query string.
When the new request arrives, the extra query string argument lets the code understand that this is the second time this page is requested, so the code can verify whether the TryingCookie does exist or not. If it doesn't, then the browser doesn't support cookies, and you can display a warning and terminate the current page. Otherwise you can flow into the remainder of the page, that contains the actual HTML you want to display if the browser supports cookies.