part one ---- Create session
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<%
Session("test1")=request.servervariables("SERVER_NAME")
Session("test2")=Request.ServerVariables("HTTP_USER_AGENT")
session("test3")="test sesion"
Response.Write(Session("test1") & "<br>" & Session("test2"))
%>
<br>
<a href="session_test2.asp">session test 2</a>
</body>
</html>
part two---Transfer session ------- 蓝色为被传递的值
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<%
dim url, browser
url =Session("test1")
browser =Session("test2")
response.write session("test3")
Response.Write (url & "<br>" & browser )
%>
</body>
</html>
这两个页面分别保存为test1.asp, test2.asp , 先打开1, 再打开2,session的值会被传递到第二个页面上面,这就是一次完整的过程.
从浏览器端无法看到session传递(一般显示空白页面)的原因:
1> 浏览器的问题? 本地浏览器block cookies ,因为session_id一般是通过Cookie来保存的,于是本地浏览器禁用cookie会造成session在页面间传递失效;
2> 客户自己的global.asa全局文件里面的设置将session 删掉了, 自然也不能传递;
本文通过两个部分展示了如何在Classic ASP中创建并传递Session。在part one中,我们创建了Session变量并将服务器名和用户代理信息存储其中。然后在part two中,这些Session变量被成功传递到另一个页面并显示出来。当遇到Session无法在页面间传递的问题时,可能是因为浏览器禁用了cookies或者全局文件global.asa中删除了Session设置。
1545

被折叠的 条评论
为什么被折叠?



