豹子 2007-6-23 10:29
判断Cookies是否处于开启状态
当开发人员使用Session变量时必须要求客户端浏览器支持接受cookies,当ASP开始一个Session,它将送一个cookies到客户端并带一个标示(SessionID).通过这个标示,ASP以后将可以确认Session并且因此来保持状态。所以,当你使用Session变量前,你需要确认cookies是否被接受。这里我讲解两个方法:
xg2CulZ EQ
|~*A4`"Us'c'~
y x'`g6f:KAhJ4b
2H(G%`+_V
(C9F&NIyB!~&e5a
d
B&Xq*myS/{3[;`T
方法一:
5`#gDv3o3{L$E#Jv`
无论何时你在两页之间,有一个非常简单可靠的方法:请求一个SessionID在第一页,传递它到下一页。与这一页请求到的SessionID比较。相同说明客户端浏览器接受Cookies;不同则不接受。很简单吧。F4Xp'G3s/R$@#qg5o7c
比如你可以在第一页中放一个(hidden field),并把SessionID写入它。提交后,从页面数据中取出SessionID.像这样:"\[v)j(C
TzX
form name="Form1" method="post" action="sessions2.asp"
p7~3z!o _
{
UserName:input name="username"br*GS{n$W(VS
Password:input name="userpassword"3~
mk
zCNX
input type="hidden" name="theSessionID" value="%=Session.SessionID%"br)d/T#KM(}
input type="submit" value="Submit"
\$]$f3Y9rn|[
/form-@P7}F5IA
在第二页中我们来判断SessionID是否相同。
IY6o1BA(u;l
%pi`j(J g[/vO
d
dim theSessionIDN8{&M?v)`
theSessionID = Request.Form("theSessionID")
/a:AI2b%e
If theSessionID = Session.SessionID Then *d5n w MsIG'N6O
E
"当二者相等时,则cookie功能开启
0q O)VY ~lB
Response.Write "Cookie已开启"S
\Eq(m2b.w
Else