让我们来详细讲解“javascript asp教程第十二课---session对象”的完整攻略。
什么是Session对象?
Session对象是ASP中一种非常重要的对象,它可以用来存储和检索用户会话数据。每个用户在使用Web应用程序时,都会有一个独立的Session对象与之对应,用于存储该用户的数据。Session对象可以存储任何类型的数据,比如整数、字符串、数组、对象等等。
Session对象的使用方法
1. 存储和检索数据
存储数据到Session对象中,可以使用以下方法:
Session("key") = "value"
其中,key表示存储的数据的键名,value表示存储的数据的值。例如:
Session("username") = "john"
这样就把字符串"john"存储到了Session对象中,使用键名"username"进行存储。
检索数据,可以使用以下方法:
username = Session("username")
这样就把Session对象中键名为"username"的数据取出来赋值给变量username了。
2. 删除数据
如果想要从Session对象中删除某个键值对,可以使用以下方式:
Session.Remove("key")
其中,key 表示要删除的数据的键名。
3. 销毁Session对象
当用户离开网站时,会话结束,此时需要销毁Session 对象中的数据,这可以通过以下方式实现:
Session.Abandon()
这样所有的Session数据都会被清空,Session对象也会变成新的空对象。
示例说明
以下是两个使用Session对象的示例:
示例一:使用Session对象保存用户登陆信息
<%@ Language=VBScript %>
<%
Dim username, password, pwd
username=Request.Form("username")
password=Request.Form("password")
If password="123456" Then
pwd="OK"
Session("username")=username
Response.Redirect("welcome.asp")
Else
pwd="密码不正确"
End if
%>
<html>
<head>
<title>Login Page</title>
</head>
<body>
<%If pwd="密码不正确" Then%>
<h2><font color="red">密码不正确,请重新输入!</font></h2>
<%End if%>
<form action="login.asp" method="post">
用户名:<input type="text" name="username" /><br /><br />
密码:<input type="password" name="password" /><br /><br />
<input type="submit" value="提交" />
</form>
</body>
</html>
上面的代码展示了一个简单的登陆页面,当用户输入正确的密码时,服务器会保存用户输入的用户名到Session对象中,然后重定向到welcome.asp页面。后续的页面都可通过Session对象获取用户名信息,来判断用户是否已登陆。
示例二:购物车
<%@ Language=VBScript %>
<%
Dim arrProduct, arrQty
arrProduct = Array("电视", "电脑", "手机", "游戏机")
arrPrice = Array(2000, 3000, 1500, 1000)
arrQty = Array(0, 0, 0, 0)
If Request.Form("submit") <> "" Then
For i = 0 to UBound(arrProduct)
arrQty(i) = Request.Form("qty" & i)
If arrQty(i) <> "" Then
Session(arrProduct(i) & "Qty") = CInt(Session(arrProduct(i) & "Qty")) + CInt(arrQty(i))
Session(arrProduct(i) & "Price") = arrPrice(i)
End If
Next
End If
%>
<html>
<head>
<title>购物车</title>
</head>
<body>
<h2>购物车</h2>
<table>
<tr>
<td>商品</td>
<td>单价</td>
<td>数量</td>
</tr>
<%For i = 0 to UBound(arrProduct)%>
<tr>
<td><%=arrProduct(i)%></td>
<td><%=arrPrice(i)%>元</td>
<td>
<form action="" method="post">
<input type="text" name="qty<%=i%>" size="2" />(库存:<%=100-i%>)
<input type="submit" name="submit" value="添加到购物车" />
</form>
</td>
</tr>
<%Next%>
</table>
<h2>我的购物车</h2>
<table>
<tr>
<td>商品</td>
<td>数量</td>
<td>小计</td>
</tr>
<%Dim total
total = 0
For i = 0 to UBound(arrProduct)
qty = Session(arrProduct(i) & "Qty")
If qty > 0 Then
price = Session(arrProduct(i) & "Price")
subTotal = price * qty
total = total + subTotal
%>
<tr>
<td><%=arrProduct(i)%></td>
<td><%=qty%></td>
<td><%=subTotal%>元</td>
</tr>
<%End If
Next%>
</table>
<h2>总计:<%=total%>元</h2>
</body>
</html>
上面的代码演示了一个购物车应用,当用户点击“添加到购物车”按钮时,服务器会把选择的数量添加到Session对象中相应的商品键名的数量上。在购物车页面中,通过Session对象来获取之前添加的商品数量和单价,计算总价并展示出来。
以上就是“javascript asp教程第十二课---session对象”的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript asp教程第十二课—session对象 - Python技术站