《网络程序设计》实验指导书学.docx
- 文档编号:11907142
- 上传时间:2023-04-08
- 格式:DOCX
- 页数:45
- 大小:629.26KB
《网络程序设计》实验指导书学.docx
《《网络程序设计》实验指导书学.docx》由会员分享,可在线阅读,更多相关《《网络程序设计》实验指导书学.docx(45页珍藏版)》请在冰豆网上搜索。
《网络程序设计》实验指导书学
实验一ASP编程环境设置及HTML网页开发
一、实验目的及要求
1.了解并掌握Windowsxp(或win7或win10)服务器上IIS(Internet服务管理器)的安装与配置;win10系统的IIS配置请自行XX。
2.了解并掌握虚拟目录的设置方法;
3.了解并掌握ASP文件上传、下载和运行方法;
4.简单HTML网页开发。
本实验需写实验报告(电子版,格式参考学校纸质实验报告格式)
每个同学建立一个文件夹:
班级学号姓名
实验一、×××××
实验二、×××××
。
。
。
实验报告为word版,正文中的截图为jpg或png格式,单个实验报告不超过2M。
二、实验内容
1.按教材所介绍的方法,在自己的个人计算机上安装配置IIS;
2.运行课程附带光盘程序chapter1\1-1.asp,确保运行结果正确。
3.编写一个简单的ASP网页程序,实现在浏览器IE中输出“这是我的第一个ASP程序!
”。
4.利用文本文件编辑器或Editplus软件编写简单HTML文件。
3.1)请开发一个网页,3秒后自动转到新浪网站,并且在页面上显示文字“3秒后将转到新浪网站……”。
3.2)请在2.4.2节框架网页示例的基础上制作自己的个人主页,并且要满足如下要求:
A.在“个人简介”页面上方给出一段自我介绍的文字和一张照片。
B.在“个人简介”页面下方利用表格说明自己的教育经历。
C.在“我的照片”页面中添加一些照片的缩略图,点击缩略图自动打开原始照片。
D.在“我的文章”页面中用排序列表的方式添加一些自己撰写或下载的文章标题,并为标题添加超链接,单击超链接在新窗口中打开对应的文章页面。
E.在左侧框架中添加一个“给我留言”的超链接,然后在对应的页面中添加一个留言表单,其中应该包括留言主题、留言内容、留言人姓名、留言人E-mail等内容。
单击“提交”按钮后,将留言发送到自己的信箱。
三、实验步骤
(一)IIS的安装与配置
ASP必须运行在服务器上,因此实验的第一项工作是构建服务器运行环境。
本实验指导以Windows操作系统下的IIS进行操作说明。
1.安装IIS
开始->控制面板->添加删除程序->添加/删除Windows组件->Windows组件向导,则出现如下对话框:
Windows10如何安装IIS(互联网信息服务)
Windows10
∙
一、方法/步骤
1.
点击“Windows”键进入“开始”菜单,点击“所有应用”,在所有应用菜单里点击“Windows系统”里的“控制面板”
2.
3.
4.
5.
在控制面板对话框里点击“程序”
6.
7.
8.
在“程序”对话框里点击“启用或关闭Windows功能”
9.
10.
11.
在“Windows功能”对话框里选中“InternetInformationServices”,在InternetInformationServices功能展开选择框里根据你的需要选择你需要的功能就行了,比如本人要用FTP功能,能运行ASP.NET程序等等,只要选中这些功能就行了。
并点击“确定”按钮。
12.
13.
14.
Windows功能开始下载并安装你要的功能的程序,直到出现“Windows已完成请求的更改”,点击重启电脑
15.
16.
17.
18.
在IE地址里输入localhost,能打开,就代表安装成功了!
19.
20.
把asptem文件夹复制到c:
\inetpub\wwwrooot\下
在浏览器地址栏中输入
Localhost/asptem/chapter1/1-1.asp
以下略
(二)虚拟目录的设置
要从主目录以外的其他目录中进行发布,就必须创建虚拟目录。
“虚拟目录”不包含在主目录中,但在显示给客户浏览器时就象位于主目录中一样。
虚拟目录有一个“别名”,供Web浏览器用于访问此目录。
别名通常要比目录的路径名短,便于用户输入。
使用别名更安全,因为用户不知道文件是否真的存在于服务器上,所以便无法使用这些信息来修改文件。
本实验以对实际路径(例如:
d:
\asptemp)创建虚拟目录来说明其操作过程。
1.在硬盘上创建一个实际目录:
d:
\asptemp
2.为d:
\asptemp创建虚拟目录
在“Internet信息服务”窗口,在“默认网站”单击鼠标右键,选择“新建”->“虚拟目录”,按提示操作分别设置虚拟目录别名(例如:
asp)、实际的目录路径(例:
d:
\asptemp)以及虚拟目录的权限。
3.运行虚拟目录下文件
假设实际目录下有文件:
1.asp,则访问该文件:
⑴http:
//localhost/asp/1.asp
⑵在虚拟目录ASP属性中的“文档”,添加一个启用默认文档:
1.asp;则访问该文件:
http:
//localhost/asp
4、把课本附带光盘程序拷贝到从从c:
\inetput\wwwroot\目录下,1-1.asp,确保运行结果正确。
(参考课本第一章相关内容)
(4)编写并运行一个简单的ASP网页程序
1.启动文本编辑器或Editplus,然后选择已建立的“ASP实验站点”,在其下进行创建、编辑和运行文件。
2.文件→新建,选择“动态页”和“ASPVBScript”,点按“创建”,在出现的屏幕上的
与之间加入以下ASP代码:<%Response.Write(“这是我的第一个ASP程序!
”)%>
3.将网页保存到形如d:
:
\asptemp\目录下,文件可命名为first.asp。
⒋在浏览器中预览,注意路径,注意观察输出结果。
(5)编写一个HTML代码的网页程序并运行
1.启动文本编辑器或Editplus,,然后选择已建立的“ASP实验站点”,在其下进行创建、编辑和运行文件,图片自选。
2.在站点目录下新建一个名为myfrist.html文件,效果图如下左图所示:
该页面分为两个部分,一是标题“欢迎光临我的第一个页面”,二是正文部分,正文背景颜色为黄色。
正文中以斜体和粗体显示文字“这是我制作的第一个页面,请大家多多关照”,一级标题“个人简介”,内容包括“姓名”、“年龄”和一张照片,段落格式为居中,字体为“隶书”、大小为“30”、字体颜色为“棕色(#990000)”,照片大小为“200*200”,单击照片进入mysecond.html页面。
图片自选
3.在站点目录下新建一个名为mysecond.html框架集文件,效果图如如上图右所示,该框架集文件窗口包含2个框架,左侧框架占到整个窗口的30%,框架名称为“leftFrame”,该窗口中显示left.html文件,窗口不出现滚动条,也不能手动改变大小;右侧框架名称为“mainFrame”,该窗口中显示main.html文件,窗口出现滚动条。
left.html:
该页面有2行文字,分别是“表格”,“列表”,单击“表格”在mainFrame中显示“biaoge.html”,单击“列表”在mainFrame中显示“liebiao.html”。
main.html:
只有1张图像。
图片自选
四、实验思考题
1.某同学开发了一个显示来访时间的ASP文件,存放在C:
\inetpub\wwwroot下,然后在资源管理器中双击该文件,却不能正常显示,请问是什么原因?
2.想一想,把一个HTML网页文件直接更改扩展名为.asp行不行?
3.请根据自己的实际情况搭建ASP的运行环境。
4.请在C:
\Inetpub\wwwroot下建立子文件夹asptemp,并为其设置虚拟目录为asptemp,并设置默认文档为index.asp和index.htm。
5.请参考IIS的专门书籍好好研究一下,并思考是否一定要在C:
\Inetpub\wwwroot下开发ASP文件?
可不可以放在别的文件夹下?
注意:
不管什么语言乱码问题都存在在asp中解决乱码方法有以下几种:
如果页面显示正常,而从数据中获取的数据为乱码 UTF-8编码的话:
在ASP脚本顶部加入
<%@Language="vbscript"Codepage="65001"%>
以及再在
区域中加入gb2312编码的话:
在ASP脚本顶部加入
<%@Language="vbscript"Codepage="936"%>
以及再在
区域中加入如果输出语句输出为乱码则需要加入这句:
response.charset="utf-8"
实验二VBScript程序设计
一、实验目的及要求
1.了解并掌握VBScript脚本程序设计语言的基本语法知识及简单程序设计方法;
2.熟练掌握ASP环境中的输出方法;
3.熟练掌握VBScript的If语句和SelectCase语句的编程技术;
4.熟练掌握VBScript的For…Next、Do…Loop和Foreach…In等循环语句的编程技术;
二、实验内容
⒈利用VBScript在网页中输出当前的时间和日期。
⒉上机验证教材上的VBScript各个函数的功能,熟悉其用法。
⒊上机验证教材上的例3-1至例3-8。
⒋试用VBScript编程,实现计算并输出1到10的阶乘之和。
⒌试用VBScript编程,实现计算并输出100到500的之间的水仙花数(水仙花数是指该数的值等于各位数字的立方和)。
⒍试用VBScript编程,利用数组实现矩阵乘法。
三、实验指导
(一)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)
(1)Sub子程序
●● Sub子程序的语法:
Sub子程序名(参数1,参数2,…)
语句……
EndSub
●● 调用子程序
1)Call子程序名(参数1,参数2,…)
2)子程序名参数1,参数2,…
(2)
(2)Function函数
●● Function函数的语法:
Function函数名(参数1,参数2,…)
语句……
EndFunction
●● 调用函数
变量=Function函数名(参数1,参数2,…)
函数可以向变量一样引用和参与运算
(四)“显示当月日历”实例分析
该程序的运行结果为显示当月的日历,其输出形式为:
3.要解决的主要问题
⑴首先要计算当月有多少天?
⑵其次要计算1号是星期几?
⑶依次计算每一天到底位于第几行第几列?
(不算标题行)?
⑷计算该表格总共有多少行?
⑸画一个若干行7列的表格,将每一天输出到相应的单元格。
2.8.计算当月有多少天?
●● 每个月的天数在28~31的范围。
●● 利用Isdate()函数判断29、30、31是否是该月的合法日期。
●● 使用自定义函数numday()来完成该功能。
3.9.计算1号是星期几?
●● 利用Weekday()函数来判断,它返回值1到7,分别对应星期日、星期一、….、星期六,因此1号是星期几正好对应第几列。
●● 使用自定义函数firstday()来完成。
4.10.计算每一天位于第几行第几列?
●● 一个月前面空出来的天数为:
firstday()-1
●● 如果(当天日+firstday()-1)能被7整除,则行数为:
(当天日+firstday()-1)\7;否则行数为:
(当天日+firstday()-1)\7+1。
两个合为一个式子:
行=(当天日+firstday()-2)\7+1
●● 列=(当天日+firstday()-1)\7Mod7但余数为0,应该在第7列。
●● 使用2维数组来保存行、列信息。
利用自定义函数arraydate()来完成。
5.11.计算日历总共有多少行?
●● 根据月份不同,日历的行数可能是4、5和6行。
●● 该月最后一天的行数,即为日历的总行数。
●● 总行数=(numDay()+firstday()-2)\7+1
●● 使用自定义函数numRow()来完成。
4.绘制表格,将每一天输出到该表格中
●● 利用嵌套循环输出数组中的每个值。
●● 如果数组值为0,就输出一个空格;如果不为0,可分为3种情况:
当天,蓝色加粗显示;周末,红色显示;其他则黑色。
5.程序代码
4、改写3-4.asp程序,要求
字符串中*个数未知,
利用字符串函数及循环语句,输出*字符个数,输出分割字符。
四、实验思考题
1.在你的个人主页上添加时间显示信息,显示当天的日期、时间及星期几。
3.请编写程序段,判断当天日期,如果是25日,则显示“请注意,明天可能有病毒发作”。
实验三Request和Response程序设计
一、实验目的及要求
1.熟练掌握利用Request对象从客户端获得信息的技术;
2.熟练掌握Form和QueryString方法,编制用户注册信息的填写与显示程序;
3.熟练掌握利用Response对象向客户端输出信息的技术;
4.熟练掌握Write、Redirect和Cookies方法,编制相关的验证演示程序。
二、实验内容
1.试编写一个简单的注册程序,客户注册后显示客户的注册信息。
三、实验指导
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)
(1)取出Cookies
语法:
Request.Cookies(“cookiesname”)
功能:
取得客户端硬盘内所存的Cookies值。
(三)实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络程序设计 实验 指导书