资源描述
ASP动态网页设计第4章.docx
《ASP动态网页设计第4章.docx》由会员分享,可在线阅读,更多相关《ASP动态网页设计第4章.docx(28页珍藏版)》请在冰豆网上搜索。
ASP动态网页设计第4章
第4章使用ASP对象
【例4.1】编写一个ASP页,以不同的字号显示“Hello,World!
”。
(1)在记事本窗口中,输入文件内容。
------------4-01.asp------------
<%@LANGUAGE=VBScript%>
Hello,World!<%Fori=3To7%>
>
Hello,World!
<%Next%>
【例4.2】本例演示了如何使用#include命令包含服务器端文件,结果如图4.4所示。
------------myfile1.inc------------
--定义Print过程-->
<%SubPrint(msg,fontname,fontsize,color)%>
SIZE=<%=fontsize%>
COLOR=<%=color%>><%=msg%>
<%EndSub%>
------------4-02.asp------------
<%@LANGUAGE="VBScript"%>
#include命令应用示例--#includefile="./inclduemyfile.inc"-->
<%
'调用被包含文件中定义的Print过程,以显示两行字符串
Print"白日依山尽,黄河入海流。
","宋体","5","red"
Print"欲穷千里目,更上一层楼。
","楷体","6","blue"
%>
【例4.3】本例使用Response.Write方法向客户端浏览器输出一个完整的HTML文件,运行结果如图4.5所示。
------------4-03.asp------------
<%@LANGUAGE="VBScript"%>
<%
Response.Write""
Response.Write"
"
Response.Write"
Write方法应用示例"
Response.Write""
Response.Write"
"
Response.Write""
Response.Write"
赠汪伦
"
Response.Write"
【唐】李白
"
Response.Write""
Response.Write"
"&_
"李白乘舟将欲行,忽闻岸上踏歌声。
"
Response.Write"
"&_
桃花潭水深千尺,不及汪伦送我情。
"
Response.Write"
"
Response.Write""
Response.Write""
%>
【例4.4】编写两个ASP文件4-04a.asp和4-04b.asp,它们的功能都是将整数1~10000显示在浏览器上并计算所用时间,区别是:
在文件4-04a.asp中将Buffer属性为设置True,在文件4-04b.asp中将Buffer属性设置为False,结果如图4.6和图4.7所示。
------------4-04a.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
缓存页面输出<%
StartTtime=Timer
Fori=1To10000
Response.Writei&Space(6)
IfiMod20=0ThenResponse.Write"
"
Next
EndTime=Timer
Interval=EndTime–StartTime
Response.Write"花费时间为:
"&Interval&"秒。
"
%>
------------4-04b.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=False%>
不缓存页面输出<%
StartTtime=Timer
Fori=1To10000
Response.Writei&Space(6)
IfiMod20=0ThenResponse.Write"
"
Next
EndTime=Timer
Interval=EndTime-StartTime
Response.Write"花费时间为:
"&Interval&"秒。
"
%>
【例4.5】本例说明如何使用Clear方法和Flush方法,如图4.8、图4.9和图4.10所示。
------------4.05a.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
登鹳雀楼<%
Response.Write"白日依山尽,黄河入海流。
"
Response.Write"欲穷千里目,更上一层楼。
"
%>
------------4.05b.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
登鹳雀楼<%
Response.Write"白日依山尽,黄河入海流。
"
Response.Clear
Response.Write"欲穷千里目,更上一层楼。
"
%>
------------4-05c.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
登鹳雀楼<%
Response.Write"白日依山尽,黄河入海流。
"
Response.Flush
Response.Write"欲穷千里目,更上一层楼。
"
Response.Clear
%>
【例4.6】本例说明如何使用End方法,运行结果如图4.11所示。
------------4-06.asp------------
<%@LANGUAGE="VBScript"%>
End方法应用示例<%
i=1
While1=1'循环条件恒为真
Response.Writei&" "
IfiMod10=0ThenResponse.Write"
"
Ifi=100ThenResponse.End'当i值为100时停止向客户端输出数据
i=i+1
Wend
%>
【例4.7】本例演示了Expires属性值的应用。
------------4-07a.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
<%Response.Expires=2%>
显示时间现在时间是:
<%=Time()%>
------------4-07b.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
<%Response.Expires=0%>
显示时间现在时间是:
<%=Time()%>
【例4.8】本例说明如何使用Redirect方法,在4-08.asp页面中判断当前系统日期是不是周末,若是则重定向到4-08b.asp页面中,否则显示当前页面的内容,结果如图4.12所示。
------------4-08a.asp------------
<%@LANGUAGE="VBScript"%>
--#includefile="./include/myfile2.inc"-->
<%
'取得今天是星期几
Today=DatePart("w",Date())
'若是星期日或星期六,则重定向到4-08b.asp页面
IfToday=1OrToday=7Then
Response.Redirect"4-08b.asp"
EndIf
%>
<%=wd(Date())%>今天是<%=Year(Date())%>年<%=Month(Date())%>月
<%=Day(Date())%>日<%=wd(Date())%>,工作着是美丽的……
------------4-08b.asp------------
<%@LANGUAGE="VBScript"%>
--#includefile="./include/myfile2.inc"-->
周末今天是<%=Year(Date())%>年<%=Month(Date())%>月
<%=Day(Date())%>日<%=wd(Date())%>,周末愉快!
------------myfile2.inc------------
<%
Functionwd(d)
SelectCaseDatepart("w",d)
Case1
wd="星期日"
Case2
wd="星期一"
Case3
wd="星期二"
Case4
wd="星期三"
Case5
wd="星期四"
Case6
wd="星期五"
Case7
wd="星期六"
EndSelect
EndFunction
%>
【例4.9】本例中演示了如何设置Cookies的值和属性。
------------4-09.asp------------
<%@LANGUATE="VBScript"%>
<%
Response.Cookies("User")("Name")="Tom"
Response.Cookies("User")("E-mail")="tom@"
Response.Cookies("User")("LastVisited")=Now()
Response.Cookies("User").Expires=Date()+7
%>
向客户端写入Cookies值创建一个名User的Cookie字典,用于记录三个键值,
即用户名、E-mail和最后访问时间。
【例4.10】创建静态网页4-10.htm和ASP动态网页4-10.asp,在静态网页中通过get方法提交表单数据,在动态网页中通过QueryString集合检索数据,如图4.14所示。
------------4-10.htm------------
用户信息
请输入你的大名:
请输入你的性别:
------------4-10.asp------------
<%@LANGUAGE="VBScript"%>
检索查询字符串示例<%
IfRequest.QueryString("txtUserSex")="男"Then
Response.Write"欢迎你,"&Request.QueryString("txtUserName")&_
"先生!
"
ElseIfRequest.QueryString("txtUserSex")="女"Then
Response.Write"欢迎你,"&Request.QueryString("txtUserName")&_
"小姐!
"
EndIf
%>
【例4.11】创建静态网页4-11.htm和ASP动态网页4-11.asp,在静态网页中包含着文本框、单选按钮、复选框、提交按钮和重置按钮等控件,并且通过POST方法提交来表单数据,在动态网页中通过Form集合检索数据,如图4.15所示。
------------4-11.htm------------
用户个人资料
姓名:
性别:
VALUE="男">男
女
爱好:
VALUE="听音乐">听音乐
VALUE="看小说">看小说
VALUE="网上冲浪">网上冲浪
------------4-11.asp------------
<%@LANGUAGE="VBScript"%>
检索表单数据示例你的个人资料如下:
姓名:
<%=Request.Form("txtUserName")%>
性别:
<%=Request.Form("optUserSex")%>
爱好:
<%
IfRequest.Form("chkFavorite1")<>""Then
Response.WriteRequest.Form("chkFavorite1")&" "
EndIf
IfRequest.Form("chkFavorite2")<>""Then
Response.WriteRequest.Form("chkFavorite2")&" "
EndIf
IfRequest.Form("chkFavorite3")<>""Then
Response.WriteRequest.Form("chkFavorite3")
EndIf
%>
【例4.12】使用Cookies制作一个简单的网页计数器,运行结果如图4.16所示。
------------4-12.htm------------
用户个人资料
姓名:
性别:
VALUE="男">男
女
------------4-12.asp------------
<%@LANGUAGE="VBScript"%>
<%Response.Buffer=True%>
读写Cookies示例<%
n=Request.Cookies("User")("VisitedTimes")
UserName=Request.Form("txtUserName")
UserSex=Request.Form("optUserSex")
Ifn=""Then
n=1
Else
n=n+1
EndIf
IfoptUserSex="男"Then
Response.WriteUserName&"先生,欢迎你访问本页面!
"
ElseIfoptUserSex="女"Then
Response.WriteUserName&"小姐,欢迎你访问本页面!
"
EndIf
Response.Write"
本页面当前已经被访问"&n&"次了。
"
Response.Cookies("User")("VisitedTimes")=n
%>
【例4.13】使用循环可以遍历所有的服务器变量名,运行结果如图4.17所示。
------------4.13.asp------------
<%@LANGUAGE="VBScript"%>
查看服务器环境变量服务器环境变量列表
变量名 | 变量值 |
<%ForEachkeyInRequest.ServerVariables%>
<%=key%> | <%=Request.ServerVariables(key)%> |
<%Next%>
【例4.14】本例说明如何使用Server.Execute方法,运行结果如图4.18所示。
------------4-14a.asp------------
<%@LANGUAGE="VBScript"%>
Server.Execute方法应用示例下面将执行文件4-14b.asp中的脚本: