试谈校园网站的设计.docx
《试谈校园网站的设计.docx》由会员分享,可在线阅读,更多相关《试谈校园网站的设计.docx(21页珍藏版)》请在冰点文库上搜索。
试谈校园网站的设计
校园网站设计
目录
第一章:
诸论………………………………………………………………..1
1.1设计思想……………………………………………………………………………………1
1.2开发工具的选用及介绍……………………………………………………………………….1
第二章:
网站总体分析与设计2
2.1网站系统分析………………………………………………………………………………………….2
2.2、主页设计3
2.3、数据库设计4
第三章:
详细设计4
3.1家长学校联络簿………………………………………………4
3.2网上图书馆11
3.3网上评优投票系统20
3.4达级考试在线查分系统与计数器的制作………………………22.
第四部分:
系统的使用讲明与安装25
第五部分:
参考文献:
26
附录:
源文件代码27
第一章诸论
在Internet飞速进展的今天,互联网成为人们快速猎取、公布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。
Internet上公布信息要紧是通过网站来实现的,猎取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。
因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。
为了更好的办学,提高学校知名度,特构建长沙市工商职业中专学校网站。
1.1设计思想
通过网站,全面宣传,展示学校风采、优点与特色,公布学校的重大活动安排与招生政策,增强家长与学校之间的联系,在Internet上实现完成部分校务,提高办事效率。
1.2开发工具的选用及介绍
ASP的优势:
ActiveServerPages:
“动态服务器网页”,一般简称为“ASP”,ASP之因此能受到大伙儿的重视与使用的缘故,要紧在于所产生的执行结果差不多上标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的扫瞄器(如IE或Netscape)都能够正确地获得ASP的“执行”结果,同时将这ASP执行的结果直接在扫瞄器中“扫瞄”,不像VBScript或JavaScript是在客户端(Client)的扫瞄器上执行,若使用VBScript来设计程序,客户端(Client)在IE扫瞄器中能够显示程序执行的结果,但是,客户端(Client)若使用Netscape扫瞄器就无法显示VBScript的执行结果。
ASP的特点:
任何开发工具皆可进展ASP
只要使用一般的文书编辑程序,如Windows记事本,就能够编辑。
因此,其他网页进展工具,例如,FrontPageExpress、FrontPage等也都能够;只是依旧建议你用记事本来写,既省钞票又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
通吃各家扫瞄由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的扫瞄器。
语言相容性高
ASP与所有的ActiveXScript语言都相容,除了可结合HTML,VBScript、JavaScript、ActiveX服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(ThirdParty)所提供的语言。
隐密安全性高
假如我们在扫瞄器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!
这是因杰ASP程序先于网站服务(WebServer)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的扫瞄器上,因此,我们所辛苦撰写的ASP程序并可不能轻易地被看见进而被盗用。
易于操控数据库
ASP能够轻易地通过ODBC(OpenDatabaseConnectivity)驱动程序连接各种不同的数据库,例如:
Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel”文件当成数据库用。
面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:
Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序能够在多个网页之间临时保存必要的信息。
ASP的六大内部对象
对象名称功能描述
RequestResponseServerSessionApplicationObjectContext从客户端取得信息将信息送给客户端提供一些Web服务器工具储存在一个Session内的用户信息,该信息仅可被该用户访问在一个ASP-Application中让不同的客户端共享信息能够用来配合MicrosoftTransaction服务器进行分布式事务处理
因此我选择了ASP结合Frontpage架构长沙市工商职业中专学校网站
第二章网站总体分析与设计
2.1网站系统分析
依照前面的设计思想进行分析,按照系统开发的差不多观点对网站进行分解,从内容上可对网站作如下划分:
l学校风采通过学校概括、教师风采、校园之星及部分图片等内容来展现。
l优点特色通过新闻、生动爽朗的教育教学栏目来展现。
l信息公布通过公告栏、信息查询等栏目来实现,内容有招生政策、
活动安排等。
l部分校务依照校务的公开程度与参与人数的多少,特选择图书管
理、评优、考试查分、家校联系四大校务在网上实现。
2.2主页设计
网站主页采纳静、动相结合的方式,即静态的主画面和动态的图片相结合,体现学校的勃勃生气,静态主页方式介绍学校风采、优点特色、信息公布,关于四大校务,就得利用ASP与数据库结合的技术建立数据库查询治理系统,采纳交互式的动态的web画面来实现。
主页结构图
注:
带下划线的表示是链接方式
2.3数据库设计
采纳的数据库是MicrosoftAccess,拟建立teach.mdb库文件,包含如下几个表文件:
allmessage留言信息表
Libbooks图书信息表
Libcategories图书类不信息表
Libemps图书馆用户信息表;
stud学生信息表
第三章详细设计
3.1家长学校联络簿
3.1.1功能:
利用SQL语法过滤特定的家长留言意见,让老师能够针对某位特定学生家长所发表的意见作出独立的回答,同时,家长在发表个人意见时,若认为意见内容涉及敏感的话题或是意见内容涉及私人隐私,都可用“悄悄话”的方式发言,这些“悄悄话”将可不能被显示出来让大伙儿看到,因此,老师拥有治理的能力,只要以密码登录治理模式,就能够进行各个学生家长的单独意见回复,而且还能看到家长们所留下的“悄悄话”。
3.1.2组成构造
共分成六大部分:
1,意见留言结果网页guest.asp:
用来显示家长发言与老师回复内容,同时还具备一般模式与治理模式两种显示方法。
2,家长发言表单网页addmsg.asp:
让学生家长填写发言内容并选择发言性质。
3,家长发言数据处理ASP程序add.asp:
处理家长发表的意见数据,同时将这些意见数据记录起来并将网页显示转向至意见留言结果网页。
4,老师回复表单网页teachans.asp:
让老师针对某位特定学生家长所发表的意见作出独立的回答。
5,老师回复数据处理ASP程序anssave.asp:
处理老师回复的数据内容,同时将这些意见数据起来并将网页显示转向至意见留言结果网页。
6,数据表文件allmessage:
用来储存家长发言数据与老师回复数据的Access类型数据库文件。
“数据表文件”负责存放家长发言数据与老师回复内容的数据记录,为Access类型的库文件,将它定名为:
“message.mdb”。
下图为家庭联络簿的组成与流程图:
老师回复
家长留言
读入写入
写入
3.1.3数据库结构设计
数据库文件”teach.mdb“中的数据表”allmessage“的栏目设置,如下图:
字段名字段类型
3.1.4界面设计与重点、难点代码的设计
数据库与留言显示程序网页
家长发言与老师回复的内容数据全部储存在数据库中,要在网页中显示目前的家长发言与老师回复数据,必须先进行数据库的链接与打开,要链接数据库我们必须使用ADO对象群的Connection对象;而要打开数据库则必须使用ADO对象群的Recordset对象,程序:
setcn=server.createobject("adodb.connection")
cn.open"filedsn=c:
\programfiles\commonfiles\odbc\datasources\msaccessdatabase.dsn"
setrs=server.createobject("adodb.recordset")
sql="select*fromallmessageorderby留言时刻desc"
rs.opensql,cn,1,1
Recordset对象是负责扫瞄与操作从数据库取出来的数据,Connection对象只负责与数据库进行链接的动作,并不能使用数据库内的数据,因此必须建立一个能够存取数据库数据的Recordset对象,
使用RS.Open方法存取”teach.mdb”数据库
RS.OpenSQL,CN,1,1
使用open方法来打开数据表或执行Select指令参数设置如下:
1,参数一(SOURCE):
为欲打开的数据表或SQL指令。
2,参数二(ActionConnection):
指定一个已打开的数据库对象,将此参数设为链接我们差不多建立好的Connection对象“CN”。
3,参数三(CursorType):
指定Recordset的打开类型,1为可读写且可自由移动。
4,参数四(LockType):
指定锁定类型,1为只读。
数据排序与SQL指令
1.Select指令的筛选语句:
格式:
Select…From
在SQL语言中:
“Select”数据表“中选取某些“栏位”的数据.
2.假如要选取的数据表数据包含了一个以上的栏位,则我们能够利用“,”逗号来栏位名称隔开。
3.假如要选取的数据表数据包含了全部的栏位,则能够利用万用字符“*”来代表全部的栏位。
可排序数据的Select指令
1.当我们希望被选取出来的数据记录数据能够依据某个或某几个栏位的内容来排序时,只要将这些排序依据的栏位摆放在“OrderBy“保留字之后,然后将这处排序的语句连接在”Select…From“后面就行了。
2.“OrderBy“默认的排序方式是“由小排到大”,但若是希望排序方式是“由大排到小”,则我们可在栏位名称后再加上“Desc“保留字!
将排序方式改为”由大排到小“。
在“显示留言意见”网页中的打开数据库ASP程序中的语句:
SELECT*Fromallmessageorderby留言日期Desc
功能为:
从数据表“allmessage“中取出所有栏位的数据,并将取出的数据记录内容依照”留言日期“栏位使用的”由大排到小“排序方式进行排序。
留言显示网页的治理模式
“显示留言意见”的网页就必须具备显示模式选择的功能,当显示模式在一般情况时要能显示家长们的一般性发言,同时还得将“悄悄话“的发言隐藏起来。
当老师以密码登录成为治理模式时,则必须将一般性发言与悄悄话发言的数据全部显示出来,同时还得让老师们能够针对某位特定学生家长所发表的意见作出独立的回答。
这两个情况是通过密码登录治理模式的ASP程序实现的:
<%ifsession("checkedit")="yes"then%>
<%else%>
密码:
  
<%endif%>
在这段网页语句中,利用Session对象来记录目前的工作模式。
当我们第一次进入“显示留言意见”网页的时候,我们所见的网页画面一定是一般!
因为Session尚未被建立,因此它的“变量”值一定可不能是“yes”,因此网页中会出现一个输入密码进入“教师治理”模式的栏位,只有当我们输入密码按下“教师治理”的按钮组织上发ASP程序中的进入治理模式语句后,Session对象才会被建立,同时,“checkedit“Session对象变量值被设置为“yes“,因此我们就进入了能将一般性发言与悄悄话发言的数据全部显示出来,同时还让教师们能够针对某位特定学生家长所发表的意见作出独立回答的治理模式页面。
留言显示网页的分页
当家长的发言与老师回复的数据笔数太多时,一次要将全部的数据内容显示在网页中,等待网页下载的时刻太长了,因此采纳固定笔数分页扫瞄方式来显示网页。
要进行分页显示,得先明白目前有多少笔的留言数据,而留言数据笔数能够通过Recordset对象的“Recordcount“(记录个数)属性得知,我们将每10笔数据为一单位分页显示:
count=rs.recordcount
ifcount/10>(count\10)then
totalpage=(count\10)+1
elsetotalpage=(count\10)
endif
“/”为浮点数除法,“\”为整数除法。
跳页选择的ASP程序语句
所有的发言数据采纳固定笔数分页扫瞄的方式来显示后,还要提供一个跳页链接显示的功能,让扫瞄者能够选择希望扫瞄的页次进得扫瞄,ASP程序语句:
pagecount=0
rs.movefirst
ifrequest.querystring("topage")<>""thenpagecount=cint(request.querystring("topage"))
ifpagecount<=0thenpagecount=1
ifpagecount>totalpagethenpagecount=totalpage
rs.move(pagecount-1)*10
发言表单网页制作
insetu3
表单的参数
表单的Action参数:
Action参数是用来指定Server端处理此一表单数据内容的程序,此处表单处理ASP程序为“add.asp“,
表单的Mothed参数:
要将表单传送至Server端的方式有两种,设置值分不为GET及POST,若设置为POST,则扫瞄器会等Server端来读取数据,若设置为GET,则当我们按下送出按钮时,扫瞄器会立立即表单中的数据内传送出去。
利用POST方法,在传送的数据上将不受限制,利用GET方法传送的数据量则大约只有2K左右。
留言处理程序
要将家长发言数据作后续处理及将这些数据内容存入数据库,须利用添加数据记录的InsertInto指令,然后再写入数据库文件中:
Insetinto指令语句格式:
Insertinto数据表名(栏目名)values(栏目值)
sql="insertintoallmessage(家长姓名,留言主题,联络信箱,留言内容,私人公开,留言时刻,班级)values("
sql=sql&"'"&parent&"',"
sql=sql&"'"&subject&"',"
sql=sql&"'"&email&"',"
sql=sql&"'"&memo&"',"
sql=sql&"'"&personal&"',"
sql=sql&"'"&now&"',"
sql=sql&"'"&bj&"')"
cn.executesql
回复表单程序网页
必须让老师们能够针对某位特定学生家长所发表的意见作出独立的回答,
使用Select…From…Where筛选语句
sql="select*fromallmessagewhere(编号="&ID&")"
rs.opensql,cn,1,3
然后将特定的家长发言数据放在表单,方法是将数据库中的数据取出来,然后放在表单栏位中:
“家长姓名“栏位网页语句标签
<%=RS("家长姓名")%>
“留言主题“栏位网页语句标签
<%=RS("留言主题")%>
“留言内容“栏位网页语句标签
<%=RS("留言内容")%>
老师在回复栏位中所填入的数据,必须送给处理老师回复数据的ASP程序”anssave.asp”来记录以及处理这些回复数据。
当老师填写好回复发言的数据后按下“送出回复”按钮后,表单中的数据内容就会以“POST”的方式由SEVER端读取,然后将数据内容交由处理老师回复数据的ASP程序“anssave.asp”来将数据内容写入数据库。
3.2网上图书馆
网上图书馆将学校图书馆图书放到网络上供人借阅,如此不仅方便了校内的学生与教职职员使用图书馆的资源,还为图书馆治理员提供了一种简便地治理图书馆的方法.
3.2.1功能
网上图书馆系统能够进行图书的出借和归还.还能够在系统中按照多种字段对图书进行查找,还能够扫瞄某个种类的所有图书.该应用程序也为图书馆治理员提供了一些功能,如添加、编辑以及删除图书等,或者在分类层次结构中添加新的种类。
3.2.2系统的层次结构
下图的每个方框代表校园图书馆网站中的一个页面。
除了只包含HTML的Search页面外,其他的均为ASP页面。
因为每个图书的页面都不同,因此大多数的页面实际上差不多上多页面。
3.2.3数据库设计
本系统共使用3个数据表:
LibBooks表包含与图书有关的所有数据。
该表中的字段内容的图书的通用信息。
另外,关于差不多出借的图书,该表中还包含借阅该图书的用户的ID号,以及图书的状态。
表视图如下:
字段名意义字段类型字段名意义字段类型
bookid书号(主键)数字(nonull)status状态文本
title书名文本checkedoutto用户id数字
author著者文本reservedby用户学号数字
Subject主题文本description描述文本
IsbnIsbn号文本keywords关键字文本
LibCategories表包含Library中的所有类不,在访问者扫瞄图书列表时将会用到这些类不。
每个类不都能够作为另外类不的父类不。
有一个专门的类不,Top-Level,没有出现在类不列表中,然而能够作为其他任何类不的父类不。
字段名意义字段类型
Categoryname类不文本(noll)
parentcategory父类不文本(noll)
LibEmps表包含能够访问图书馆网站的用户信息。
该表包含一些通用的信息字段,比如用于进入图书馆的用户密码等。
字段名意义字段类型字段名意义字段类型
empid用户id(主键nonull)数字password用户密码文本
Empname用户姓名文本manager治理员代号数字
emailaddress用户邮箱文本
图书馆数据库的数据关系如图9-22所示。
其中表LibEmps和表LibCategories与表LibBooks之间差不多上一对多的关系。
每个雇员都能够借阅多本图书,每个类不都能够包含多本图书。
3.2.3界面设计与重点代码的设计
网上图书馆系统有两种用户,一是治理员。
另一种是只同意使用图书馆系统,而没有治理功能的一般用户。
访问者进入网站,首先要进行登录,如下图所示。
登录页面(index.asp)
访问者输入E-mail地址和密码来登录,然后单击“登录”按钮。
输入的数据提交后与数据库中的用户表进行匹配。
须创建一个记录来保存基于访问者登录的用户信息
setRSFindEmp=conn.Execute("selectEmpID,ManagerfromLibEmpswhere"_
&"EmailAddress='"&Request.Form("EmailAddress")&"'and"_
&"Password='"&Request.Form("Password")&"'")
ifRSFindEmp.EOFthen
TheMessage="密码或email地址不对."
else
Session("EmpID")=RSFindEmp("EmpID")
Session("Manager")=RSFindEmp("Manager")
Response.Redirect"../yk.htm"
endif
表单域EmailAddress和Password用于Where了句中来猎取一个记录。
假如访问者输入了一个无效的用户名,则记录集中将可不能返回匹配的记录。
我们能够通过查看EOF标记来推断一个记录集是否为空。
为空,则访问者将被拒绝进入该系统。
不为空,则访问者的EmpID值和Manager值将从记录集中返回。
写入Session变量, 变量将在整个网站的所有网页中差不多上有效的。
这些变量的存在与否及其取值将用于确定是否同意进入一个特定的网页,同时也用于访问者进行书目的归还和借阅操作。
图书馆菜单页面
图书馆菜单页面包含指向其他4个页面的链接:
治理页面、搜索页面、图书列表页面和主页面。
还有一个可显示用户所借书籍的按纽。
假如访问者是图书馆治理员,则菜单界面如图所示。
假如访问者不是图书馆治理员,则看到如图所示的界面。
非治理员的访问者的界面上没有指向治理员菜单页面的链接。
实现方法:
访问者登录时在登录页面上的创建的会话变量Session用于从数据库中猎取访问者的有关信息,表示它是否是治理员。
假如值为1,就表明访问者是一个治理员,则用如下代码写入一个指向治理员页面的链接:
<%IfSession("Manager")=1then%>
治理员菜单
<%endif%>
通过按纽B1是否为空来推断要不要显示用户所借图书,利用一个记录集来猎取访问者差不多借出了的所有图书的列表。
ifNOTisempty(Request.Form("B1"))then
setRSBooks=conn.Execute("selectBook