本文摘自PHP中文网,作者零下一度,侵删。
我们将制作一个能够记住访问者姓名的页面,在这个小案例中,你将学会如何使用Request对象的Cookies、Form以及ServerVariables集合的值,还可以学习到如何使用Response对象来发送Cookies。首先来看看程序代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <%@LANGUAGE= "VBSCRIPT" CODEPAGE= "65001" %><!doctype html><html><head><meta charset= "utf-8" ><title>用Cookies记住访问者的姓名</title></head><body><%Dim sUserName
sUserName = Trim(Request.Cookies( "name" ))'判断name是否为空,不为空则输出name的值If sUserName = "" Then
'判断是否是POST刚提交了表单,是的话则获取表单内容输出Cookies
If UCase(Trim(Request.ServerVariables( "REQUEST_METHOD" ))) = "POST" Then
sUserName = Trim(Request.Form( "name" ))
Response.Cookies( "name" ) = sUserName
Response.Cookies( "name" ).Expires = DateAdd( "d" , 1 , Now) 'Cookies一天后过期 Response.Write( "我已经记住您的姓名了!" ) Else
'否则显示表单,让用户提交表单%>
<form method= "post" action= "" >
请告诉我您的姓名 : <input name= "name" type= "text" />
<input type= "submit" value= "提交" />
</form><%
End If Else
Response.Write( "您好," & sUserName)End If%></body></html>
|
首次运行,无法获取 Cookies 信息,显示表单,让用户提交,如下图:

提交表单,还是POST到当前ASP页面,因为还是无法获取Cookies,所以显示提交表单成功的页面,如下图:

再次刷新当前页面 RequestCookies.asp ,因为可以获取到Cookies,直接显示访问者姓名了。

我们再详细讲解下让用户输入姓名并保存的部分,首先获取ServerVariables变量REQUEST_METHOD的值,这个值标识了当前页面的请求方式,如果是POST方式,说明现在正在想此页面提交表单,这时就要获取表单的值,并且将其使用Response.Cookies集合来向客户端输出Cookies,否则显示供用户填写姓名的HTML代码。
小知识
Trim函数删除字符串两边的空格,LTrim函数删除字符串左侧空格,RTrim函数删除字符串右侧空格。
UCase函数把指定字符串转化为大写,LCase函数把指定字符串转化为小写。
【相关推荐】
1. 总结Asp.net内置对象之Request对象使用实例
2. 谈谈Request和Response这两个对象的使用
3. 分享asp中request对象五个获取客户端资料的方法
4. 详解ASP.NET 系统对象之Request
以上就是分享一个Request对象小案例的详细内容!
相关阅读 >>
总结asp.net内置对象之Request对象使用实例
谈谈Request和response这两个对象的使用
分享一个Request对象小案例
asp.net在底层类库中获取session
详细介绍c#实现关闭子窗口而不释放子窗口对象的方法分享
c#高级编程(三)-对象和类型详解
分享asp中Request对象五个获取客户端资料的方法
lambda表达式进行对象结合操作的实例详解
属性值反序列化失败怎么解决?
asp.net从客户端中检测到有潜在危险的Request.form值
更多相关阅读请进入《Request》频道 >>
清华大学出版社
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。
转载请注明出处:木庄网络博客 » 分享一个Request对象小案例