当前位置: 首页 > 图文教程 > 网络编程 > ASP > 判断Cookies是否处于开启状态

ASP
Server Application Error错误解决思路
ASP教程:在IIS环境下自己设置404页面
ASP代码出现80040e14错误的解决方法
Http_Referer,Server_Name和Http_Host
HTTP_X_FORWARDED_FOR和REMOTE_ADDR
总结的Server.Mappath的用法
巧用ASP脚本命令重启服务器
实现数字字符串的最大值、最小值和平均值
详解ASP脚本的执行顺序
理解认识阿里妈妈淘客系统对外接口通用规范
网站开发者参考:开源ASP网站源码
IIS管理程序Adsutil.vbs修改FTP服务器的PASV端口范围
ASP程序中调用函数Now()异常的问题
流量大的网站不要选择万能空间
网站挂马方式大总结
启动 W3SVC 服务报错怎么解决
Vista系统安装IIS7配置ASP运行环境
Server Application Error 8004EOOF错误
ASP不用模板直接简单生成HTML页面
ASP教程:gb2312和utf-8乱码问题解决

ASP 中的 判断Cookies是否处于开启状态


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 50 ::
收藏到网摘: n/a

当开发人员使用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
%>