查看完整版本: 判断Cookies是否处于开启状态

豹子 2007-6-23 10:29

判断Cookies是否处于开启状态

当开发人员使用Session变量时必须要求客户端浏览器支持接受cookies,当ASP开始一个Session,它将送一个cookies到客户端并带一个标示(SessionID).通过这个标示,ASP以后将可以确认Session并且因此来保持状态。所以,当你使用Session变量前,你需要确认cookies是否被接受。这里我讲解两个方法:
xg2CulZ EQ
|~*A4`"U s'c'~   
yx'`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 %p i`j(Jg[/vO d
dim theSessionIDN8{&M?v)`
theSessionID = Request.Form("theSessionID")
/a:AI2b%e If theSessionID = Session.SessionID Then *d5nw MsIG'N6O E
"当二者相等时,则cookie功能开启
0qO)VY~lB Response.Write "Cookie已开启"S \Eq(m2b.w
Else
Hk?8g!O~U "若二者相等时,则cookie功能关闭
y!q)D"UvC'xg Response.Write "Cookie没有开启!"
pmG#ULx End If,W @Wu0t\
%  
IabE5Cnv9I!mB ,s8x-Y xk/V
  TdoqO%n

)W:u3z,g y!M 方法二:\-]"enF+D)i:\
  也可用这种方法,首先在一个页面里写入一个cookie,如:Q n/Cf,EY@SA&K!K
%
Y7Cirw-O7]6o Response.Cookies("status")="onoroff"'d"l"`*n"@
%
7AP9pJV\UH   在第二页里读出此cookie:
7x/R;UK t)fe re %-@,q?B+M-g1v:L&@
if Request.Cookies("status")="" then :d?l s,Q}'Y&V0tJ
"当cookies("status")里没有值时,则cookie功能没有开启 q$S J3]IgZ2]B
Response.Write "Cookie没有开启!"3Fo*hr+]Gz
else
%@[#Yp N!x#w'N "当cookies("status")里有值时,则cookie功能开启
i-l-~i ~)D:^ Response.Write "Cookie已开启"f&D@W%qgr
end if4up Vt,ygw
%
页: [1]
查看完整版本: 判断Cookies是否处于开启状态