判断Cookies是否处于开启状态

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

当开发人员使用Session变量时必须要求客户端浏览器支持接受cookies,当ASP开始一个Session,它将送一个cookies到客户端并带一个标示(SessionID).通过这个标示,ASP以后将可以确认Session并且因此来保持状态。所以,当你使用Session变量前,你需要确认cookies是否被接受。这里我讲解两个方法:

方法一:

无论何时你在两页之间,有一个非常简单可靠的方法:请求一个SessionID在第一页,传递它到下一页。与这一页请求到的SessionID比较。相同说明客户端浏览器接受Cookies;不同则不接受。很简单吧。

比如你可以在第一页中放一个(hidden field),并把SessionID写入它。提交后,从页面数据中取出SessionID.像这样:

<form name="Form1" method="post" action="sessions2.asp">

UserName:<input name="username"><br>

Password:<input name="userpassword">

<input type="hidden" name="theSessionID" value="<%=Session.SessionID%>"><br>

<input type="submit" value="Submit">

</form>

在第二页中我们来判断SessionID是否相同。

<%

dim theSessionID

theSessionID = Request.Form("theSessionID")

If theSessionID = Session.SessionID Then

"当二者相等时,则cookie功能开启

Response.Write "Cookie已开启"

Else

"若二者相等时,则cookie功能关闭

Response.Write "Cookie没有开启!"

End If

%>

方法二:

也可用这种方法,首先在一个页面里写入一个cookie,如:

<%

Response.Cookies("status")="onoroff"

%>

在第二页里读出此cookie:

<%

if Request.Cookies("status")="" then

"当cookies("status")里没有值时,则cookie功能没有开启

Response.Write "Cookie没有开启!"

else

"当cookies("status")里有值时,则cookie功能开启

Response.Write "Cookie已开启"

end if

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航