《ASP动态网页设计》
实 验 指 导 书
系部:信息工程系
专业:计算机应用专业
目 录
实验一 WINDOWS 2000 SERVER IIS的安装与配置 2
实验二 HTML标记符的使用(表格、表单对象、CSS样式) 2
实验三 JAVASCRIPT语言 3
实验四 VBSCRIPT编程 3
实验五 ASP内建对象 4
实验六 可安装组件和脚本对象 5
实验七 数据管理的存取操作 6
实验一 Windows 2000 Server IIS的安装与配置
一、实验目的:
熟悉PWS的安装过程与配置方法。通过编写简单的ASP页面,掌握ASP网页的编写和运行方法。
二、实验要求:
学生掌握关于动态网页的相关知识;具备制作静态网页的基础;具备一定的网络基础知识。
三、实验器材:
Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、ASP Web服务器的安装与配置;
[参考步骤]:
将windows 2000光盘插入教师机中,将其共享;
学生机器将查看自己的IP地址,在网络中配置;
在添加和删除程序中,添加IIS;
在自己的本地硬盘中用03soft建一文件夹;
在管理工具中Internet 信息服务中配置IIS;
运行Dreamweaver MX 2004建立站点,完成相关的设置,其中根目录与IIS中一致,并使用服务器技术;
新建一个网页,互相访问;
2、调试ASP页面显示: “这是利用ASP网页输出的信息”;
[参考步骤]:
启动Dreamweaver MX 2004,然后切换到源代码显示方式;
在<body>与</body>之间,加入以下ASP代码:
<%Response.write(“这是利用ASP网页输出的信息”)%>;
将网页保存到C:\Inetpub\wwwroot目录下,文件命名为first.asp;
启动IE浏览器,在地址栏中键入:http://localhost/first.asp或http://127.0.0.1/first.asp,然后按回车。注意观察输出结果;
在wwwroot目录下创建一个myweb子目录,并将first.asp文件移动到myweb目录下,然后在浏览器中键入http://Localhost/myweb/first.asp;
实验二 HTML标记符的使用(表格、表单对象、CSS样式)
一、实验目的:
熟悉并掌握HTML标记符的用法和功能。掌握HTML网页的基本结构,学会利用HTML标记符来编写简单的网页,达到能够编写和阅读HTML网页源代码的目的。
二、实验要求:
学生掌握关于HTML的相关知识;具备制作静态网页的基础;具备一定的网络基础知识。
三、实验器材:
Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、试用记事本编写一个名为myfirst.htm的页面,并在网页中以标题2号字,居中,蓝色输出“Hypertext Mark-up Language”,页面的标题设置为“网页测试”。
2、编写一页面,设置页面背景图为bg.jpg,在页面中居中显示名为myphoto.jpg的图形文件。
3、编写一页面,在页面中显示输出图2.12所示的表格,表格的宽度为450,边线宽度为1.
单元格11
单元格12
单元格13
单元格21
单元格22
单元格31
单元格32
[参考代码]
<table width="450" border="1" align="center">
<tr>
<td width="113"><div align="center">单元格11</div></td>
<td width="153"><div align="center">单元格12</div></td>
<td width="162"><div align="center">单元格13</div></td>
</tr>
<tr>
<td rowspan="2"><div align="center">单元格21</div></td>
<td colspan="2"><div align="center">单元格22</div></td>
</tr>
<tr>
<td><div align="center">单元格31</div></td>
<td><div align="center">单元格32</div></td>
</tr>
</table>
4、编写用户登陆界面,“用户登陆”采用标题2、居中输出,网页标题设置为“用户登陆”。“用户名”、“口令”以及按钮全部要求居中对齐,用户名和口令输入框的默认值均为guest。表单对象命名为login,提交方法采用post,表单数据提交给login.asp页面处理,最后将网页保存为login.htm,并用浏览器浏览。
用户登录
用户名:
口 令:
确定 重填
[参考代码]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>用户登录</title>
</head>
<body>
<form name="form1" method="post" action="login.asp">
<table width="450" border="0" align="center">
<tr>
<td colspan="2"> <h2 align="center">用户登录</h2></td>
</tr>
<tr>
<td width="204"><div align="center">用户名:</div></td>
<td width="236">
<div align="center">
<input name="textfield" type="text" value="guest">
</div></td>
</tr>
<tr>
<td><div align="center">口令:</div></td>
<td>
<div align="center">
<input name="textfield2" type="password" value="guest">
</div></td>
</tr>
<tr>
<td colspan="2">
<div align="center">
<input type="submit" name="Submit" value="确定">
<input type="reset" name="Submit2" value="重填">
</div></td>
</tr>
</table>
</form>
</body>
</html>
4、编写名为index.htm的页面,在该页面中创建一超级链接,单击后,在新弹出的窗口中播放demo.avi动画;并添加背景音乐,播放的音乐文件为purelove.mid
[参考代码]
<body>
<embed src="demo.avi" autostart="true">
<bgsound src="bg.mid" loop="-1">
</body>
实验三 JavaScript语言
实验目的:
深刻理解有关函数中变量的作用域和各类控制语句的功能;
理解和灵活运用JavaScript中常用的几个对象的属性和方法;
实验要求:
回顾和复习以前C语言的基本语法知识;进一步加深理解Javascript语法知识;
实验器材:
Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、使用JavaScript编程实现:根据时间段的不同,在网页中显示不同的问候语,若小时数在12点以前,则输出“早上好!”的问候语;若在12点至18点,则输出“下午好!”;18点以后输出“晚上好!”。
[参考代码]
<script language="javascript">
var curday=new Date();
switch(curday.getDay()) {
case 1:
document.write("星期一");break;
case 2:
document.write("星期二");break;
case 3:
document.write("星期三");break;
case 4:
document.write("星期四");break;
case 5:
document.write("星期五");break;
case 6:
document.write("<font color='FF0000'>星期六</font>");break;
case 0:
document.write("<font color='FF0000'>星期日</font>");break;
}
</script>
2、运用JavaScript和windows对象setTimeout方法编程实现在网页中不断显示不同图片的动画效果;
[参考代码]
<body>
<img src="" alt="" name="my_image" width="32" height="32" id="my_image" />
<Script Language="JavaScript">
var image,i=1
function image_change() {
if(i==5) {i=1;}
my_image.src="Image"+i+".jpg";
i=i+1;
image=setTimeout('image_change()',1000);
}
image_change();
</Script>
</body>
3、运用JavaScript和windows对象status属性编程实现网站状态行跑马灯式文字效果的显示:“欢迎光临本站”。
实验四 VBScript编程
一、实验目的:熟悉VBScript的语法、掌握服务器端利用VBScript编程的基本方法。
二、实验要求:学生掌握VB语言的语法特点和内置的常用函数的用法;对程序的结构(顺序、分支、循环、过程)的概念和语法比较清晰;具备基本的编写程序的能力。
三、实验器材:Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、利用VBScript在页面中输出当前的日期;
2、上机验证VBScript各函数的用法和功能;
3、试用VBScript编写一个求数n阶乘的函数Power,利用表单获得要求阶乘的数,然后通过调用Power函数,实现阶乘的计算并输出结果;
[参考代码]
shuru.htm
<form name="form1" method="post" action="jisuan.asp">
<table width="519" height="25" border="1" align="center">
<tr>
<td width="174">请输入一个整数:</td>
<td width="329"><input name="number1" type="text" id="number"></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="计算">
</div></td>
</tr>
</table>
</form>
jisuan.asp
<%function jiecheng(t)
dim j
j=1
for i=1 to t
j=j*i
next
jiecheng=j
end function
%>
</head>
<body>
<%data=cint(request.Form("number1"))
response.Write("阶乘为:"&jiecheng(data))
%>
</body>
4、VBScript编程,实现计算并输出100至500间的水仙花数。(水仙花数是指该数的值与各位数字的立方和相等);
[参考代码]
<body>
<%for i=100 to 500
a=i\100
b=i mod 100
b=b\10
c=i mod 10
if i=a^3+b^3+c^3 then
response.Write(i & ",")
end if
next%>
</body>
5、利用VBScript的数组,结合编程实现在页面中输出100个随机键位的大写字母,要求每行显示20个字母,各个字母间用一个空格分割。
[参考代码]
<body>
<%dim ran(100)
for i=1 to 100
ran(i)=chr(int(26*rnd())+65)
next
for i=1 to 100
response.Write(ran(i) & " ")
if i mod 20=0 then
response.Write("<br>")
end if
next
%>
</body>
实验五 ASP内建对象
实验目的:
熟悉和掌握各ASP内建对象的功能和用法。
实验要求:
学生充分理解面向对象的程序设计;理解各类变量的作用域的概念及其使用方法;理解和掌握ASP内建对象的常用属性和方法;
实验器材:
Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、试编写一ASP页面,利用Response对象的write方法,向客户端浏览器输出一个4行3列,宽度为1的表格,并在每个单元格中填入该单元格的行号和列号;
[参考代码]
<table border="1" width="400" align="center">
<%
for rownum=1 to 4%>
<tr>
<%for colnum=1 to 3%>
<td><%=rownum & "," & colnum%></td>
<%next%>
</tr>
<%next%>
</table>
2、编写一个ASP页面,实现利用Response对象的write方法,向客户端输出一超级链接,该超链接的标题为“返回首页”,链接的地址为“index.asp”;
[参考代码]
<body>
<%
response.write "<a href='index.asp'>返回首页</a>"
%>
</body>
3、设计用户登陆页面login.htm。若用户名和口令均为guest,则导航到guest.asp页面;若用户名为administrator,口令为haweofw,则导航到manager.asp页面。若口令错误,则输出“口令错误!单击此处返回”的提示信息,“单击此处返回”为超链接,用户单击后,重新返回到登陆页面。用于表单处理并实现口令判断的页面为dispose.asp。要求分别用表单的Post和Get方法,来分别实现该操作;
用户登录
用户名:
口 令:
确定 重填
[参考代码]
login.htm
<form name="form1" method="post" action="dispose.asp">
<table width="479" height="98" border="1" align="center">
<tr>
<td colspan="2"><div align="center">
<h2>用户登陆</h2>
</div></td>
</tr>
<tr>
<td width="211"><div align="center">用户名:</div></td>
<td width="327">
<div align="left">
<input name="username" type="text" id="username" value="username">
</div></td>
</tr>
<tr>
<td><div align="center">口令:</div></td>
<td><div align="left">
<input name="psword" type="password" id="psword" value="111111">
</div></td>
</tr>
<tr>
<td><div align="center"></div></td>
<td><div align="left"></div></td>
</tr>
<tr>
<td colspan="2"><div align="center"></div>
<div align="center">
<input type="submit" name="Submit" value="确定">
<input type="submit" name="Submit2" value="重填">
</div></td>
</tr>
</table>
</form>
dispose.asp
<body>
<% username=request.Form("username")
psword=request.Form("psword")
if username="guest" and psword="guest" then
response.Redirect("guest.asp")
else if username="administrator" and psword="123456" then
response.Redirect("manager.asp")
else
response.Write("<a href='login.asp'>单击此处返回!</a>")
end if
end if
%>
</body>
4、试编写一HTML页面,在页面中输出3个多项选择题,题目自定,每个选择题均有A,B,C,D四个选项,当用户单击“交卷”按钮时,提交所作的题给grade.asp页面,grade.asp页面获得表单所提交的数据后,将数据直接输出给客户端,以显示用户对各题所作的选择;
[参考代码]
shijuan.htm
<body>
<form name="form1" method="post" action="shijuancheck.asp">
<table width="545" border="1" align="center">
<tr>
<td>1、电子商务包括()两个方面:</td>
</tr>
<tr>
<td><input name="choice1" type="checkbox" id="choice1" value="A">
A、电子商务</td>
</tr>
<tr>
<td><input name="choice1" type="checkbox" id="choice1" value="B">
B、电子交易</td>
</tr>
<tr>
<td><input name="choice1" type="checkbox" id="choice1" value="C">
C、自动化生产</td>
</tr>
<tr>
<td><input name="choice1" type="checkbox" id="choice1" value="D">
D、专家管理系统</td>
</tr>
<tr>
<tr>
<td>2、电子商务包括()两个方面:</td>
</tr>
<tr>
<td><input name="choice2" type="checkbox" id="choice2" value="A">
A、电子商务</td>
</tr>
<tr>
<td><input name="choice2" type="checkbox" id="choice2" value="B">
B、电子交易</td>
</tr>
<tr>
<td><input name="choice2" type="checkbox" id="choice2" value="C">
C、自动化生产</td>
</tr>
<tr>
<td><input name="choice2" type="checkbox" id="choice2" value="D">
D、专家管理系统</td>
</tr> <tr>
<td>3、电子商务包括()两个方面:</td>
</tr>
<tr>
<td><input name="choice3" type="checkbox" id="choice3" value="A">
A、电子商务</td>
</tr>
<tr>
<td><input name="choice3" type="checkbox" id="choice3" value="B">
B、电子交易</td>
</tr>
<tr>
<td><input name="choice3" type="checkbox" id="choice3" value="C">
C、自动化生产</td>
</tr>
<tr>
<td><input name="choice3" type="checkbox" id="choice3" value="D">
D、专家管理系统</td>
</tr>
<td><div align="center">
<input type="submit" name="Submit" value="交卷">
<input type="reset" name="Submit2" value="重置">
</div></td>
</tr>
</table>
</form>
</body>
grade.asp
<body>
<%dim answer
for m=1 to 3
answer=""
for n=1 to request.Form("choice" & m).count
answer=answer & request.Form("choice" & m)(n)
next
response.Write(answer)
next
%>
</body>
5、试编写一ASP页面,实现在浏览器中显示输出接受请求的服务器的IP地址、服务器的端口号、当前网页的真实物理路径、当前网页的虚拟路径和发出请求的客户方IP地址。
[参考代码]
<body>
<%
pagename=server.MapPath(request.ServerVariables("script_name"))
response.Write(pagename)
servername=request.ServerVariables("server_name")
response.Write(servername)
serverport=request.ServerVariables("server_port")
response.Write(serverport)
serverip=request.ServerVariables("local_addr")
response.Write (serverip)
%>
</body>
实验六 数据管理的存取操作
一、实验目的:熟悉并掌握ASP中利用ADO实现对数据管理的存取访问方法;
二、实验要求:学生掌握基础的数据库理论知识;熟悉基础的数据库结构化查询语言SQL;熟悉VBScript中的ADO对象;
三、实验器材:Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等;
四、实验内容:
1、利用Access创建一个名为myStore.mdb的数据库,并将其保存或复制到站点根目录下的DataBase目录中;
2、在管理工具中,利用“ODBC数据源”为myStore.mdb数据库,创建一个名为store.dsn的文件数据源,并将其保存或复制到站点根目录下的database目录中;
3、在Dreamweaver中新建一页面,然后编程实现利用连接对象的execute方法,通过执行相应的SQL语句,实现以下功能;
(1)在数据库中创建一个名为userdata的数据库,其字段和类型如下;
字段名 字段类型 字段宽度 说明
truename Text 10
username Text 15 不允许为空
password Text 10 允许为空
email Text 40 允许为空
stopflag Text 1 允许为空
(2)向userdata数据表添加两条记录,记录内容如下:
张三 happy2002 1973au 0
李四 xtfan ui3*96kw01 0
(3)将happy2002用户密码更改为“G#96KW01”
[参考代码]
<%
dsnpath=server.MapPath("/chapter08/database/mydsn.dsn")
set conn=server.CreateObject("adodb.connection")
conn.open "filedsn=" & dsnpath
fhsql="insert into 学生表 values('0004','李四','机电')"
'fhsql="delete from 学生表 where 学号='0002'"
'fhsql="update 学生表 set 专业='管理' where 学号='0003'"
conn.execute(fhsql),num
response.write "有"&num&"条记录插入到表中"
%>
4、试编写一会员登陆页面(Login.htm)。若密码校验正确,则将页面导航到trade.asp;若密码错误,则输出秘密错误的提示信息;若数据表中无该用户,则提示用户注册,并产生注册的链接,用户单击该链接后,将页面导航到用户注册页面(register.htm)。另外,用户单击会员登陆页面中的“马上注册”按钮时,也将页面导航到用户注册页面。
[参考代码]
Login.htm
<body leftmargin="0" topmargin="60" marginwidth="0" marginheight="0" oncontextmenu="return false;" onselectstart="return false;">
<table width="64%" height="54%" border="0" align="center" cellspacing="0">
<tr>
<td align="center"><form name="form1" method="post" action="loginchk.asp" onSubmit="return xxg()">
<table width="257" border="0" align="center" cellpadding="1" cellspacing="1" height="113" style="border: 1 solid #000000">
<tr>
<td height="23" colspan="2" background="../pic/vip005bg.gif"><div align="center">
<p class="logintd1">后台管理登录</p>
</div></td>
</tr>
<tr>
<td width="71" align="center" class="logintd2">姓 名:</td>
<td width="179"> <input type="text" name="user"> </td>
</tr>
<tr>
<td width="71" align="center" class="logintd2">密 码:</td>
<td width="179"> <input type="password" name="password"> </td>
</tr>
<tr>
<td align="center"> </td>
<td><input type="submit" name="Submit" value=" 登 陆 ">
<input type="reset" name="Submit2" value=" 取 消 " style="width: 64px" onClick="reset_form()"></td>
</tr>
</table>
</form></td>
</tr>
</table>
实验七 可安装组件和脚本对象
一、实验目的:熟悉和掌握ASP中常用的,可以选择性安装的组件的用法与功能,掌握脚本对象中常用子对象的功能与用法;
二、实验要求:学生理解可安装组件的意义;熟悉常用组件的用法;
三、实验器材:Windows 2000 Server计算机系统;安装IIS、Dreamweaver MX 2004、Access 2000数据库系统等。
四、实验内容:
1、Ad Rotator组件;
[参考代码]
1、Ad Rotator(主要由以下几个文件组成)
advertise.asp
<%
set myad=server.CreateObject("mswc.adrotator")
response.Write myad.getadvertisement("adort.txt")
%>
adort.txt
edirect adredir.asp
width 400
height 60
border 1
*
adpic/press.gif
http://localhost/chapter08/section5/teacher.asp
清华大学出版社
40
adpic/myschool.gif
http://www.penctedu.cn
新思维网校
30
adpic/giga.gif
http://www.gigabyte.com.cn
技嘉中文网站
30
adredir.asp
<%
response.Redirect(request.QueryString("url"))
%>
2、访问权限检测组件:站点中有一个manager.asp页面需要授权访问,仅允许用户名为:“03soft”用户,密码为:“123”的登陆用户访问。
[参考代码]
实现的步骤与方法:
1、在系统中创建用户名03soft,设置帐户密码:123
2、设置manager.asp只有03soft用户可以访问
3、设置一个mainpage.asp其中存放访问权限检测组件,只有Administrator和03soft用户可以访问;
4、在IIS中,设置mainpage.asp页面的验证方式为“集成Windows验证”; 具体见案例:
3、计数器组件
[参考代码]
<%
set mypagecounter=server.CreateObject("mswc.pagecounter")
mypagecounter.pagehit
if mypagecounter.hits=20 then
response.Write "<script language='javascript'>alert('恭喜你成为第20位访问者')</script>"
end if
response.Write "访问次数:" & mypagecounter.hits
%>
4、文件存取组件
[参考代码]
<%
set fso=server.CreateObject("scripting.filesystemobject")
filename=server.MapPath("counter.txt")
set txtstream=fso.createtextfile(filename)
txtstream.writeline("this is a test")
txtstream.close
set fso=nothing
response.Write("文件创建成功!")
%>