Chinaunix首页 | 论坛 | 博客
  • 博客访问: 26267124
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: 系统运维

2009-04-22 19:27:04

cookie 常用来对用户进行识别。

实例:

如何创建欢迎 cookie。

什么是 Cookie?

cookie 常用来对用户进行识别。cookie 是一种服务器留在用户电脑中的小文件。每当同一台电脑通过浏览器请求页面时,这台电脑就会发送 cookie。通过 ASP,您能够创建并取回 cookie 的值。

如何创建 cookie?

"Response.Cookies" 命令用于创建 cookie。

注意:Response.Cookies 命令必须位于 标签之前。

在下面的例子中,我们会创建一个名为 "firstname" 的 cookie,并向其赋值 "Alex":

<%
Response.Cookies("firstname")="Alex"
%>

向 cookie 分配属性也是可以的,比如设置 cookie 的失效时间:

<%
Response.Cookies("firstname")="Alex" 
Response.Cookies("firstname").Expires=#May 10,2002#
%>

如何取回 cookie 的值?

"Request.Cookies" 命令用于取回 cookie 的值。

在下面的例子中,我们取回了名为 "firstname" 的 cookie 的值,并把值显示到了页面上:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

输出:

Firstname=Alex

带有键的 cookie

如果一个 cookie 包含多个值的一个集合,我们就可以说 cookie 拥有键(Keys)。

在下面的例子中,我们会创建一个名为 "user" 的 cookie 集。"user" cookie 拥有包含用户信息的键:

<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

读取所有的 cookie

请阅读下面的代码:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

假设您的服务器将所有的这些 cookie 传给了某个用户。

现在,我们需要读取这些 cookie。下面的例子向您展示如何做到这一点(请注意,下面的代码会使用 HasKeys 检查 cookie 是否拥有键):




<%
dim x,y

for each x in Request.Cookies
response.write("

")
if Request.Cookies(x).HasKeys then
for each y in Request.Cookies(x)
response.write(x & ":" & y & "=" & Request.Cookies(x)(y))
response.write("
")
next
else
Response.Write(x & "=" & Request.Cookies(x) & "
")
end if
response.write "

"
next
%>


输出:

firstname=Alex

user:firstname=John
user:lastname=Adams
user:country=UK
user:age=25

如何应对不支持 cookie 的浏览器?

如果您的应用程序需要和不支持 cookie 的浏览器打交道,那么您不得不使用其他的办法在您的应用程序中的页面之间传递信息。这里有两种办法:

1. 向 URL 添加参数

您可以向 URL 添加参数:


Go to Welcome Page

然后在类似于下面这个 "welcome.asp" 文件中取回这些值:

<%
fname=Request.querystring("fname")
lname=Request.querystring("lname")
response.write("

Hello " & fname & " " & lname & "!

")
response.write("

Welcome to my Web site!

")
%>

2. 使用表单

您还可以使用表单。当用户点击提交按钮时,表单会把用户输入的数据提交给 "welcome.asp" :


First Name:
Last Name:

然后在 "welcome.asp" 文件中取回这些值,就像这样:

<%
fname=Request.form("fname")
lname=Request.form("lname")
response.write("

Hello " & fname & " " & lname & "!

")
response.write("

Welcome to my Web site!

")
%>
阅读(554) | 评论(1) | 转发(0) |
0

上一篇:ASP 变量

下一篇:ASP Session 对象

给主人留下些什么吧!~~

chinaunix网友2009-06-08 08:54:13

Response.Cookies("firstname").Expires=Date - 1 就表示将此cookie值进行过期处理了