1、《Asp动态网页设计》课程设计 河南化工职业学院 《Asp》课程设计 专业班级: 计算机102 学生姓名: ** 学 号: 11 指导教师: 邵** 2012年6月20日 目录 摘要 2 一、课程概述 3 二、设计的目的及要求 4 1、课程设计的目的 4 2、课程设计的要求 5 三、设计的分析 8 1、设计的目标与环境 8 2、Asp技术介绍 9 四、设计操作过程的说明 10 1、数据库表的设计与实现 10 2、登录窗口界面 11
2、 3、留言板界面 13 4、留言板插入功能的实现界面 19 五、收获、感想以及体会 23 六、参考文献 24 摘要 随着Internet的发展,网站的作用越来越重要,被称之为继广播、报纸、杂志、电视后的第五种媒体——数字媒体,拥有众多优势,所以现在不少企业都有或正在建设自己的网站。 在Internet得到广泛应用的今天,网页已经成为一种不可代替的信息交流工具,它以交互的特点开创了人们进行信息交流的新方式。 以前的静态网页大多不能与数据库连接,交互能力有限吗,不能很好的实现人们交流的愿望。今天,我们可以使用各种动态网页来弥补这个缺陷,使得这种新兴的、为大家广泛接受的交流方式焕
3、发了更强的生命力,可以通过动态网页来实现聊天交流、留言等。 通过对《ASP动态网页设计》一个学期的学习,同学们都认为真正的学到了有用知识,通过这次实训来检查自己的不足,但无论如何,这些知识都为我们的下一步学习打下了坚实的基础。做这么一个课程设计,一方面是为了检查我们一个学期来我们学习的成果,另一方面也是为了让我们进一步的掌握和运用它,同时也让我们认清自己的不足之处和薄弱环节,加以弥补和加强。 本程序就是用动态网页制作的一些信息录入和聊天留言,它可以实现静态网页不能达到的功能。这个动态网页主要考察我们网页设计和Access数据库连接。 由于动态网页的快速发展和应用,我们要尽可能理解它的魅力
4、并且熟练掌握ASP动态网页设计。 关键字:Internet、ASP动态网页设计、Access数据库 一、课程概述 留言板作为网站重要的一个部分,从来就是一个大家交流的平台!留言板是一种最为简单的BBS应用,借助留言板,浏览者可以张贴留言的方式给站长、版主或其他浏览者进行留言和提问。 主要介绍留言板系统的设计思路和制作过程,从留言板的重要性开始,介绍我的留言版采用的ASP技术和SQL语言以及ACCESS数据库,进而阐述整个留言板系统的制作过程和具体的设计思路。该留言板较全面地利用asp技术实现留言板的基本功能:留言、回复、删除,并增加了一些特色功能。最后介绍自己在设计过程的心得体会。
5、 留言板是互联网上最常见的一种服务,也是最典型的交互式网页。留言板是一种电子便签管理系统,是用ASP.NET或其它脚本语言编写的网络应用程序。在网络用户交流中起很大的作用,每个人都可以将他的资料和要求等信息保留在页面上,以供他人观看。留言板供其他网友给自己留言,或者临时存放自己的感受。通常上网者可以使用访客留言板发表一些文章,或者是通过留言板给网站维护者留下一些意见和看法,留言板已经成为网友之间互通信息、相互交流的重要渠道。 而该留言板仅仅是简单的留言和管理员对留言板进行设置和进行回复、删除管理的工具。该留言板简单但实用,而且具备了大多数留言板的基本功能。 互联网技术的不断发展和普及,使构
6、造互联网站、开发网络应用程序已经成为当前的热门技术之一,开发网上交流软件,现已有很多工具和方法,各种技术都具有其特色和长处。文章叙述了在Windows环境下,利用SQL Server 创建数据库,运用ASP.NET等开发工具,设计留言系统的原理及过程。 二、设计的目的及要求 本实训安排有三个小任务,涉及教材中的重点和难点技术且有一定的综合性,能够使学生既能熟练掌握知识和技术又能做一些简单的应用,一定程度上提高学生运用知识和技术解决实际问题的能力。 1、课程设计的目的 实训准备:ASP的安装、配置、检测 检查系统中的IIS、Dreamweaver(FrontPage 2003)能否正常
7、运行。 在教师指定的空间创建一个新文件,命名为:班级+姓名+学号 。此文件夹用于保存上传程序文件。例如:信息071李然03 创建虚拟目录,创建一个ASP文件,运行文件。 虚拟目录创建步骤: 步骤1:在磁盘任意位置创建一个站点文件夹。 步骤2:右击文件夹图标并在弹出的快捷菜单中选择“属性”命令查看属性。 步骤3:单击“WEB共享”标签打开“WEB共享”选项卡,选中“共享这个文件夹”选项,然后添加一个别名(可增加多个别名) 步骤4:打开IIS服务管理器,查看已经添加的虚拟目录。 步骤5:可通过http://localhost/别名/站点文件名访问你的站点 实训任务一:在网页之间传
8、递数据 相关背景: 在大型网站中,一般都包括很多页,这就需要在不同网页间传递数据,或者说在不同网页之间共享数据。比如,在一论坛BBS中,单击一条记录,就可以打开一个详细页面,也就是把记录的编号(ID)传了过去。 技术方法: 在一个页面中提供一个表单,提交后传递到另外一个页面中。 在URL(网址)后面可以跟若干变量,如particular.asp?id=3,在另一个页面中用Request.QueryString获取。 使用Session保存信息,然后在各个页面中都可以读取。 使用Cookies保存信息,然后也可以在各个页面中读取 。 2、课程设计的要求 1、能力要求 我们
9、以一个简单的通讯录为对象,综合上述四种数据传递方法,理解掌握通讯录当中数据传递方法的应用。
图2.1 通讯录主界面
(1)、理解所给程序的结构。
(2)、理解并掌握程序文件之间的数据传递关系,在实验报告中说明传递关系。
(3)、掌握各种数据库访问操作方法。
2、实训内容:
数据传递方式(一):单向数据传递
原理:指的是数据从页面A传递到页面B,并不需要传递回来。也可形象比喻为“肉包子打狗式的数据”。
页面A
页面B
ID=3
图2.2 单项数据传递示意图
这种实现方法一般式在页面A中添加一个超链接标记,在地址后面跟上一个变量,如 10、ular.asp?ID=3> ,页面B中利用Request.QueryString(“ID”)获取。
数据传递方式(二):数据传递给自身
原理:程序文件只有一个页面,该页面会根据不同的参数显示相应的内容。
页面A
Page_no=3
图2.3 将数据传递给自身示意图
比如:数据分页显示程序(课本228-229)
第一部分是获取数据页编号page_no的语句,如果是第一次打开页面,则令其为1,否则由URL后面跟的参数page_no决定。
Dim page_no 11、
If Request.QueryString("page_no")="" Then
page_no=1
Else
page_no=Cint(Request.QueryString ("page_no"))
End If
第二部分是普通的数据库分页显示语句,显示page_no变量指定的数据页。
第三部分就是页面最后,I从1到总页数循环,将所有数据页码逐个输出,并给其加上链接,并将页面编号用page_no传出去。
数据传递方式(三):通过表单将数据传递给自身
原理:表单既可以将信息提交给其他页面,也可以提交给自身。如通讯录主界面所示, 12、默认显示所有人的信息,但是如果用户填写了查找关键字 ,就把查找关键字提交给本身,然后根据关键字查找相应的人了。
实训任务二:创建数据库与建立数据库链接
实训目的:
掌握Access数据库的建立方法
掌握配置Access数据库的ODBC数据源的方法
掌握链接数据库的两种方法:使用ODBC数据源的方法和使用连接信息串的方法。(在实训三中体现)
实训内容:建立一个简单留言薄系统数据库guest.mdb
字段名称
数据类型
字段大小
name
文本
100
time
日期/时间
liuyan
文本
255
图2.4 简单留言薄系统数据库
实训任务三:设计一 13、个基于数据库的简单留言系统
实训目的:
掌握ASP的ADO组件的使用方法
掌握常用的SQL语句。
实训内容:
步骤1: 设计数据库(实训二中)
步骤2:建立数据库连接(两种方法)
步骤3:编写代码。
三、设计的分析
开发一个留言薄系统,首先需要确定留言的功能是什么,也就是用户想要的留言所能做的工作。用户使用留言是按照一定的流程来进行的:用户注册登录进入留言,可以就某个话题展开讨论,通过留言功能发布新的话题,通过回帖的功能回复已有的话题;管理员要管理留言,系统需要具有的功能有创建、删除留言的版块,管理注册的用户,管理留言,设置留言基本参数。这样的流程就决定了留言所应具有的功能。 14、
通过上面的分析,总结留言的功能有以下几项: 留言版块列表;浏览留言;发帖回帖;编辑留言;删除留言;用户注册;用户登录;控制用户权限;修改注册信息;设置留言参数;管理版块;管理用户。
观察留言所有功能需求,按不同实体分类,可以分为四类实体对象:版块、留言、用户和留言。这四类对象,可以设计为四个数据实体,如果使用数据库存储它们,即可以设计四个基本数据表的集合来存储这些实体的基本信息;它们可以设计为四个基本表,映射四个实体的基本数据。这些基本对象只是留言系统中最为基本的要素,对于一个完整的留言还需要其它相关的表来记录相关的信息,即实体之间的相互关系信息。留言一般存在两种用户,注册用户和管理员。 15、用户的权限是向下覆盖的,即上级权限包含下级权限,在这个留言中,管理员的权限是上级权限。
留言系统的用户浏览信息功能,是用户讨论问题的平台,发帖、浏览、回帖一直贯穿用户的整个活动。同时,由于留言系统的留言管理是管理员在留言浏览时进行的,因此编辑、删除等功能也安排在浏览信息时实现,只是一般用户没有权限做这些动作。其它与管理员相关的功能,包括版块管理、用户管理和留言设置的都是需要管理员在管理模块进行操作。
下面进行简单介绍:
(1)、查看留言:任何用户可以根据发言者留下的邮箱地址发邮件。
(2)、删除留言:如果用户发表了不符合留言规则的留言,则需要删除此留言。
(3)、插入留言:即发表符 16、合留言规则的留言。
(4)、查询留言:根据用户所输入的用户名进行查询留言的内容。
1、设计的目标与环境
1、设计目标
(1)、提供留言查看,留言发表,留言回复,留言删除功能。
(2)、数据存储安全可靠。
(3)、界面设计美观友好,使用灵活便捷。
(4)、系统最大限度地实现易维护和易操作性。
(5)、系统运行稳定,安全可靠。
2、开发运行环境
(1)、系统开发平台:IIS信息服务;
(2)、系统开发语言:JavaScript;
(3)、系统开发数据库:Microsoft office Access 2003;
(4)、运行平台:Windows XP(SP2)/Windo 17、ws 2000(SP4)/Windows Server 2003(SP1);
(5)、分辨率:最佳效果为1024*768像素。
2、Asp技术介绍
Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。而且ASP也是服务器端脚本环境,可以用来创建交互式WEB页并建立强大的的Web应用程序。
有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌 18、在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
浏览网页方便,交互速度也快。ASP是运行在服务器端,所以我们无须担心浏览器是否支持ASP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。ASP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
四、设计操作过程的说明
1、数据库表的设计与实现
(1) 、设计数据库表的字段时,需要充分考虑到留言的 19、应用特点。数据库表的设计要求简单易于理解,扩展性好。
图4.1 数据库表的设计
(2)、向数据库表中输入内容,详细如下图:
图4.2 数据库表详细内容
(3)、数据库的连接
Access是文件型数据库,一个文件就是一个数据库,可以利用ASP中的语法直接连接。在连数据库之前,必须先声明一个对象来当作数据库与ASP程序之间的媒介,具体连接方式代码如下:
<%
dim db
set db=server.createobject("adodb.connection")
provider="provider=microsoft.jet.oledb.4.0;"
dbpath 20、"data source=" & server.mappath("guest.mdb")
db.open provider & dbpath
set rs=server.createobject("ADODB.recordset")
%>
2、登录窗口界面
留言板用户登录页面是访客到用户之间不可或缺的一个部分,即用户必须在登录之后才能进行更进一步的操作,可以进行查看自己的留言、删除自己的留言等操作。
图4.3 留言板登录界面
代码如下:
21、FFF>
留言薄登录界面 23、
if(xm<>"") then
if len(mima)>=6 and len(mima)<=8 then
response.redirect"1.asp"
else
response.write "密码不正确!"
end if
else
response.write "用户名不正确!"
end if
%>
24、面,是留言板的主要交流内容,是用户-网页-用户之间交流的必要手段,在查看留言的页面里,可以让人一目了然的了解到所看留言;第二行为留言人的用户名,即发帖人;第三行为留言时间;第四行为留言的内容,即为留言的正文部分;接下来的部分即为“回复留言”、“删除留言”,用户可以快速的进行所查看留言的回复,也可以看到其他用户对该留言的相关回复。当用户点击相关主题,即可进入到留言板查看留言页面。
图4.5留言板界面
代码如下:
25、ad>
26、"page_no"))
Session("page_no")=page_no
Elseif varType(Request.Form("keyword"))=8 Then
page_no=1
Session("page_no")=page_no
Else
page_no=Session("page_no")
End If
Dim keyword
If Trim(Request.Form("keyword"))<>"" Then
keyword=Request.Form("keyword")
27、Session("keyword")=keyword
Elseif Trim(Request.Form("keyword"))="" And varType(Request.Form("keyword"))=8 Then
keyword=""
Session("keyword")=keyword
Else
keyword=Session("keyword")
End If
%>
 
返回登录界面
3、留言板界面
留言板页留言板界面
<%
'下面的page_no变量用来确定显示第几页数据。
Dim page_no
If Session("page_no")="" Then
page_no=1
Session("page_no")=page_no
Elseif Request.QueryString("page_no")<>"" Then
page_no=Cint(Request.QueryString(