当开发人员使用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
%>
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器