Web程序设计实验指导书.docx
- 文档编号:11462312
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:58
- 大小:492.32KB
Web程序设计实验指导书.docx
《Web程序设计实验指导书.docx》由会员分享,可在线阅读,更多相关《Web程序设计实验指导书.docx(58页珍藏版)》请在冰豆网上搜索。
Web程序设计实验指导书
Web程序设计实验指导书
(教育技术学专业)
编著:
覃伟、莫云峰
浙江科技学院信息学院
2009年9月
实验一:
ASP编程环境及VBScript简单程序设计
一、实验目的
1.熟悉ASP的语法规则
2.掌握ASP编程中常用的各种语句
3.理解函数的定义和使用方法
4.掌握ASP代码和HTML标签的混合使用
二、实验内容
1.从下列5种语句中选择3种编写程序
a)if语句输出成绩等级
b)Switch输出成绩等级
c)For语句输出1到100的奇数的平方和
d)Do循环输出1到100的奇数的平方和
e)循环嵌套输出星号
*****
****
***
**
*
2.定义20个元素的数组,为每个元素产生1~100内的随机值。
3.编写输出一个10行2列的表格的代码。
要求奇数行背景为白色,偶数行背景色为“#abcdef”)
三、实验提示
(一)ASP运行环境的配置
ASP必须运行在服务器上,因此实验的第一项工作是构建服务器运行环境。
本实验指导以Windows2000操作系统下的IIS5.0进行操作说明。
1.打开“开始”菜单,选择“设置”,选择“控制面板”,点击“添加删除程序”图标,打开如图1-1所示的窗口。
图1-1图1-2
2.点击“添加/删除Windows组件”按钮,在弹出的对话框中选择“Internet信息服务”,如图1-2所示。
3.点击“下一步”,按照提示插入光盘,直至IIS安装完成。
4.IIS安装好后,在系统盘(一般是C盘)会建立一Inetpub文件夹。
下面还有ftproot、wwwroot目录。
其中ftproot是ftp服务的主目录,wwwroot是www服务(网页浏览)的主目录。
5.在打开的“控制面板”窗口中选择“计算机管理”,双击打开,然后双击“Internet服务管理器”,如图1-3所示。
图1-3
6.对“默认网站”单击鼠标右键,出现弹出菜单,选择“属性”,如图1-4所示。
图1-4
可根据需要修改默认网站的属性,一般多为“主目录”和“文档”。
主目录中主要包括网站在本地机器中的实际路径以及相关权限;文档则设置网站启用的默认文档。
(二)虚拟目录的设置
要从主目录以外的其他目录中进行发布,就必须创建虚拟目录。
“虚拟目录”不包含在主目录中,但在显示给客户浏览器时就象位于主目录中一样。
虚拟目录有一个“别名”,供Web浏览器用于访问此目录。
别名通常要比目录的路径名短,便于用户输入。
使用别名更安全,因为用户不知道文件是否真的存在于服务器上,所以便无法使用这些信息来修改文件。
本实验以对实际路径(例如:
d:
\asptemp)创建虚拟目录来说明其操作过程。
1.在硬盘上创建一个实际目录:
d:
\asptemp
2.为d:
\asptemp创建虚拟目录
在“Internet信息服务”窗口,在“默认网站”单击鼠标右键,选择“新建”->“虚拟目录”,按提示操作分别设置虚拟目录别名(例如:
asp)、实际的目录路径(例:
d:
\asptemp)以及虚拟目录的权限。
3.运行虚拟目录下文件
假设实际目录下有文件:
1.asp,则访问该文件:
2http:
//localhost/asp/1.asp
⑵在虚拟目录ASP属性中的“文档”,添加一个启用默认文档:
1.asp;则访问该文件:
http:
//localhost/1.asp
(三)在Dreamweaver2004MX下设置管理站点
本课程实验的开发工具为Dreamweaver2004MX,为了能方便的在此软件中创建、调试和运行程序,需要在DW中给网页程序设置管理站点。
假设要实验的应用程序存储在实际路径d:
\asptemp中,它的虚拟目录名为asp,在DW中的管理站点名设为“ASP实验站点”,则具体操作如下:
1.启动Dreamweaver2004MX程序,选择:
站点→站点管理,则出现图1-5所示的对话框。
图1-5
2.单击“新建”按钮,选择“站点”,如图1-6所示。
图1-6
3.输入站点名:
ASP实验站点;单击下一步,如图1-7所示。
4.选择单选按钮:
是,我想使用服务器技术,然后根据下拉菜单选择:
ASPVBScript。
单击下一步,如图1-8所示。
5.选择文件存储的实际位置,该实验指南为:
d:
\asptemp。
单击下一步,如图1-9所示。
图1-7
图1-8
图1-9
6.输入该管理站点浏览的根目录,该实验指南为:
http:
//localhost/asp/,然后单击“测试URL(T)”按钮,来测试设置是否成功。
注:
asp即为前面已经设置的路径为:
d:
\asptemp的虚拟目录名。
测试成功,再单击“下一步“,如图1-10所示。
7.选择单选按钮“否”,单击“下一步”则出现站点定义总结,然后按“完成“按钮,则结束对管理站点的设置。
图1-10
(四)编写并运行一个简单的ASP网页程序
1.启动Dreamweaver2004MX,然后选择已建立的“ASP实验站点”,在其下进行创建、编辑和运行文件。
2.文件→新建,选择“动态页”和“ASPVBScript”,点按“创建”,在出现的屏幕上的
与之间加入以下ASP代码:<%Response.Write(“这是我的第一个ASP程序!
”)%>
3.将网页保存到形如d:
:
\asptemp\目录下,文件可命名为first.asp。
4.选择“在浏览器中预览”,注意观察输出结果。
(五)VBScript函数
函数是一种特定的运算,在程序中要使用一个函数时,只要给出函数名并给出一个或多个参数,就能得到它的函数值。
VBScript内部函数可分为:
转换函数、字符串函数、日期和时间函数、数学函数和检验函数。
1.转换函数
VBScript对Variant变量一般会根据需要自动转换成合适的数据类型;但有时,自动转换有可能造成数据类型不匹配错误。
此时,就应使用VBScript的转换函数来强制转换数据的子类型。
常用的转换函数见下表:
函数
功能
CStr(Variant)
将变量Variant转化为字符串类型
CDate(Variant)
将变量Variant转化为日期类型
CInt(Variant)
将变量Variant转化为整数类型
CLng(Variant)
将变量Variant转化为长整数类型
CSng(Variant)
将变量Variant转化为Single类型
CDbl(Variant)
将变量Variant转化为Double类型
CBool(Variant)
将变量Variant转化为布尔类型
2.字符串函数
常用字符串函数及功能如下表:
函数
功能
取字符串长度
Len(string)
大、小写字母转换
Lcase(String),Ucase(String)
截取子字符串
Mid(string,start[,length])
Left(string,length)
Right(string,length)
删除空格
Trim(string),Ltrim(string),Rtrim(string)
重复
String(num1,str1)
空格
Space(num1)
取代字符串
Replace(str1,str2,str3)
字符串拆分为1维数组
Split(str1,delimiter)
返回字符串位置
InStr(str1,str2)
3.时间和日期函数
函数
功能
Now()
取得系统当前日期和时间
Date()
取得系统当前日期
Time()
取得系统当前时间
Month(Date)
取得给定日期的月份
Day(Date)
取得给定日期是几号
WeekDay(Date)
取得给定日期是星期几
(星期天,1到6分别为1~7)
Year(Date)
取得给定日期的年份
DateDiff(“Var”,Var1,Var2)
计算日期或时间Var1与Var2的间隔
“Var”:
为时间间隔因子
DateAdd(“Var”,num,date)
num:
间隔倍数;date:
原始日期或时间
对时间/日期num作加法
FormatDateTime(Date,2)
显示短日期格式
FormatDateTime(Date,1)
显示长日期格式
FormatDateTime(Date,4)
显示短时间格式
FormatDateTime(Date,3)
显示长时间格式
4.数学函数
函数
功能
Abs(number)
返回一个数的绝对值
Sqr(number)
返回一个数的平方根
Int(number)
取number的最大整数部分
FormatNumber(num1,num2)
将num1转化为指定小数位num2的数
Rnd()
返回0到1的随机数
Ubound(数组名,维数)
返回最大下标数
Lbound(数组名,维数)
返回最小下标数
5.检验函数
函数
功能
VarType(Variant)
返回变量Variant的数据子类型
IsEmpty(Variant)
检查变量Variant是否为Empty
IsNull(Variant)
检查变量Variant是否为Null
IsObject(Variant)
检查变量Variant是否为对象类型
IsNumeric(Variant)
检查变量Variant是否为数值类型
IsArray(Variant)
检查变量Variant是否为数组类型
IsDate(Variant)
检查变量Variant是否为日期类型
(六)VBScript脚本语言语句
1.条件语句
⑴IfThenEndIf
If条件语句Then
执行语句
EndIf
⑵IfThenElseEndIf(单条件)
If条件语句Then
执行语句1
Else
执行语句2
EndIf
⑶IfThenElseEndIf(多条件)
If条件语句1Then
执行语句1
ElseIf条件语句2Then
执行语句2
……..
Else
执行语句n+1
EndIf
⑷SelectCase语句
SelectCase变量或表达式
Case结果1
执行语句1
Case结果2
执行语句2
……
Case结果n
执行语句n
CaseElse
执行语句n+1
EndSelect
2.循环语句
⑴For……Next循环
Forcounter=startToend[Stepnumber]
执行语句
Next
⑵Do……Loop循环
DoWhile条件1
执行语句
Loop
或
Do
执行语句
LoopWhile条件1
⑶ForEach…In循环
ForEach<元素>In<集合>
<语句>
Next
说明:
对<集合>中的每一个<元素>依次执行<语句>一次。
其集合元素为离散型的。
(七)VBScript过程
在VBScript中,过程有两种:
Sub子程序和Function函数。
(1)Sub子程序
1.● Sub子程序的语法:
Sub子程序名(参数1,参数2,…)
语句……
EndSub
2.● 调用子程序
1)Call子程序名(参数1,参数2,…)
2)子程序名参数1,参数2,…
(2)Function函数
3.● Function函数的语法:
Function函数名(参数1,参数2,…)
语句……
EndFunction
4.● 调用函数
变量=Function函数名(参数1,参数2,…)
函数可以向变量一样引用和参与运算
(八)“显示当月日历”实例分析
该程序的运行结果为显示当月的日历,其输出形式为:
1.要解决的主要问题
⑴首先要计算当月有多少天?
⑵其次要计算1号是星期几?
⑶依次计算每一天到底位于第几行第几列?
(不算标题行)?
⑷计算该表格总共有多少行?
⑸画一个若干行7列的表格,将每一天输出到相应的单元格。
2.计算当月有多少天?
●每个月的天数在28~31的范围。
● 利用Isdate()函数判断29、30、31是否是该月的合法日期。
● 使用自定义函数numday()来完成该功能。
9.计算1号是星期几?
● 利用Weekday()函数来判断,它返回值1到7,分别对应星期日、星期一、….、星期六,因此1号是星期几正好对应第几列。
● 使用自定义函数firstday()来完成。
10.计算每一天位于第几行第几列?
● 一个月前面空出来的天数为:
firstday()-1
● 如果(当天日+firstday()-1)能被7整除,则行数为:
(当天日+firstday()-1)\7;否则行数为:
(当天日+firstday()-1)\7+1。
两个合为一个式子:
行=(当天日+firstday()-2)\7+1
● 列=(当天日+firstday()-1)\7Mod7但余数为0,应该在第7列。
● 使用2维数组来保存行、列信息。
利用自定义函数arraydate()来完成。
11.计算日历总共有多少行?
● 根据月份不同,日历的行数可能是4、5和6行。
● 该月最后一天的行数,即为日历的总行数。
● 总行数=(numDay()+firstday()-2)\7+1
● 使用自定义函数numRow()来完成。
3.绘制表格,将每一天输出到该表格中
● 利用嵌套循环输出数组中的每个值。
4.程序代码
<%OptionExplicit%>
<%
'首先调用函数arrarDate,返回6*7的二维数组,该数组和单元格一一对应
DimtheDate'定义一个变量,用以接受返回的数组
theDate=arrayDate()'调用函数,返回数组,执行后,theDate自动变成数组
'下面正式输出日历
DimI,J
ForI=1Tonumrow()'从第1行到最后1行循环
Response.Write"
ForJ=1To7
IftheDate(I,J)<>0Then
IftheDate(I,J)=Day(Date())Then
Response.Write"
ElseIfJ=1ORJ=7Then
Response.Write"
Else
Response.Write"
EndIf
Else
Response.Write"
Endif
Next
Response.Write"
Next
%>
<%
'该函数返回当月共有多少天
Functionnumday()
DimIntDay,I
intDay=28'用intDay来统计,首先赋值28
ForI=29to31
IfIsDate(Year(date())&"-"&Month(date())&"-"&I)Then
intDay=I'如果当天有效,返回True,则更新天数
Endif
Next
numday=intDay'返回函数值
EndFunction
'该函数返回当月1号是星期几
FunctionfirstDay()
firstDay=WeekDay(Year(date())&"-"&Month(date())&"-1")'计算1号是周几
EndFunction
'该函数将每一天保存到6*7的数组中,将日期填入对应的数组中
FunctionarrayDate()
DimI,J,K,arrayTemp(6,7)
ForI=1To6'这个嵌套循环用以给数组赋初值0
ForJ=1To7
arrayTemp(I,J)=0
Next
Next
ForK=1tonumday()'从1号到最后一天循环
I=(k+firstDay()-2)\7+1'计算该天所在的行数
J=(k+firstDay()-1)Mod7'计算该天是所在的列数
IfJ=0ThenJ=7'如果余数为0,表示是第7列
arrayTemp(I,J)=K'最后将当天保存到对应行列中
Next
arrayDate=arrayTemp'返回函数值
EndFunction
'该函数返回当月共应该显示多少行
FunctionnumRow()
numRow=(numDay()+firstDay()-2)\7+1'计算表格的行数,调用了前面的函数
EndFunction
%>
四、实验过程与结果
(一)实验过程
1.配置IIS环境。
2.ASP文件的新建。
3.ASP文件的保存。
4.ASP文件的调试。
(二)实验结果
上交asp页面,完成实现报告
实验二:
Request对象的使用
一实验目的
1.熟悉ASP的语法规则;
2.掌握表单的制作方法;
3.掌握Request对象的使用方法;
4.掌握对Request对象采集的数据进行格式转换的方法。
二实验内容
1.学生选课系统基本信息搜集表单的建立,并实现数据的采集,输出采集的内容
学号
姓名
性别
密码(身份证号码)
密码验证
学院、专业(代码实现如,信息学院教育技术学专业用0101表示)
班级
联系电话
邮箱
爱好
备注
要求:
a.加上密码验证功能,如果2次输入的密码不匹配,输出错误提示。
b.“爱好”通过列表输出。
c.最好是在同一个页面中实现所有功能(表单合并)。
三实验提示
ASP几个重要的内部对象:
● Request对象:
从客户端获取数据
● Response对象:
向客户端输出数据
● Session对象:
记载特定客户的信息
● Application对象:
记载同一个应用程序中的所有用户之间的共享信息
● Server对象:
创建COM对象和Scripting组件等
(一)Request对象
Request对象:
用于接受所有从浏览器发往服务器的请求内的所有信息。
Request对象的语法:
Request[.数据集合|属性|方法](变量或字符串)
1.Request对象的集合(获取方法)
对象
功能
QueryString
从查询字符串中读取用户提交的数据
Form
取得表单信息
Cookies
取得客户端浏览器的Cookie信息
ServerVariables
取得服务器环境变量信息
ClientCertificate
取得客户端浏览器的身份验证信息
2.Request对象的属性
属性
功能
TotalBytes
只读属性,取得客户端响应数据的字节大小
3.Request对象的方法
属性
功能
BinaryRead
以二进制码方式读取客户端POST数据
(二)Response对象
功能:
将输出发送到客户端。
Response对象的语法:
Response.集合|属性|方法
1.Response对象的方法
方法
功能
Write
输出信息到客户端浏览器
Redirect
引导客户端浏览器至新的Web页面
BinaryWrite
输出二进制信息到客户端浏览器
Clear
清除在缓冲区的所有HTML页面
End
终止处理ASP程序,并返回当时的状况
Flush
立即送出缓冲区的HTML数据
2.Response对象的属性
属性
功能
Buffer
设置是否把Web页面输出至缓冲区,
取值为false或true;默认为false
ContentType
设置服务器响应给客户端的HTTP文件形式;
如果未指定,默认为TEXT/HTML
3.Response对象的集合
属性
功能
Cookies
设置客户端的Cookie值
⑴设置Cookies
语法:
Response.Cookies(“cookiesname”)=“cookiesvalue”
功能:
将cookiesvalue写入至客户端硬盘。
⑵设定Cookies的有效期
语法:
Response.Cookies(“cookiesname”).expires=“settingtime”
功能:
将Cookies设为永久的方式,其有效期为settingtime。
(1)取出Cookies
语法:
Request.Cookies(“cookiesname”)
功能:
取得客户端硬盘内所存的Cookies值。
(三)实例分析:
网站注册和进入
1.程序功能
若是首次访问本网站,则先注册,并把用户名记入cookies;若是老顾客,则直接进入网站。
2.程序流程
(1)主程序:
4_index.asp
(2)注册程序:
4_login.asp
(3)验证程序:
4_verify.asp
3.程序代码
⑴主程序:
4_index.asp
<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 程序设计 实验 指导书