资源描述
毕业:计算机设计(完整版)资料
(可以直接使用,可编辑 优秀版资料,欢迎下载)
目 录
第一章 网站设计思想及开发工具简介 4
1.1 设计思想 4
1.2 开发工具的选用及介绍 4
第二章 网站总体分析与设计 6
2.1 网站系统分析 6
2.2 总体设计 6
2.3 数据库设计 7
第三章 详细设计 9
3.1 成绩查询 9
3.2 毕业生去向 12
3.3 师生互动 16
3.4 后台管理 17
3.5 重点代码的设计 20
第四章 存在的问题 24
第五章 系统的使用说明与安装 24
5.1 运行环境要求 24
5.2 安装设置 25
结论 25
致谢 25
参考文献 25
附录 25
计算机网站设计
计算机科学与技术 2005届 周忆琴 指导老师 谢俊屏
(计算机科学系,宝鸡文理学院,陕西 宝鸡 721007)
摘 要:在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。网上发布信息主要是通过网站来实现的,获取信息也是要在网络这个信息海洋中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在网络应用上的地位显而易见,它已成为政府、企事业单位等信息化建设中的重要组成部分,从而倍受人们的重视。
本文介绍了开发宝鸡文理大学计算机学院网站的过程,通过对计算机学院网站建设的需求分析;完成了系统功能的设计、数据库设计及代码设计;说明了几个主要模块的程序实现。本网站系统界面友好,操作简单,比较实用。
关键词:ASP;学生管理;话题管理
Computer college website design
Zhou-yiqin
(Department of Computer Science, Baoji University of Arts and Sciences, Baoji Shannxi 721007)
Abstract: Fly in the Internet soon today that develop, The Internet becomes people to obtain quickly, announce with the important outlet that deliver the information, it at people politics, economy, life each of etc. develops the important function. Announce the information on the Internet primarily is to passes the website to realize of, obtain the information to also want to carry down up and down from the website an information for needing according to the certainly inspectional way in Internet this information ocean. For this reason website developments are in the applied last position in Internet easy to see, It has become the government, business enterprise business unit etc. information turns the importance in developments constitutes the part, from but times is valued by people.
This text introduced the process of the development treasure chicken literary style university calculator college website, passing to the need analysis of calculator college website developments;Completed design, database design and code designs of the system function;Explaining the procedure of a few and main mold piece realizes.This website system interface amity, operation simple, more practical.
keywords: ASP; Student management; Topic management
引言
在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。网络上发布信息主要是通过网站来实现的,获取信息也是要在网络这个信息海洋中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在网络应用上的地位显而易见,它已成为政府、企事业单位等信息化建设中的重要组成部分,从而倍受人们的重视。
随着互联网的进一步发展和成熟,宽带网络的流行,网络技术在生活中的应用越来越广泛。同时随着windows NT的服务器软件IIS(Internet Information Server)的升级换代,一种更新的服务器编程概念展现在人们面前,这就是动态服务器页面ASP(Active Server Pages)。它向我们提供了一条通向服务器编程的简单而又功能强大的途径。
随着社会的进步,宝鸡文理学院计算机系发展成为宝鸡文进大学计算机学院是必然趋势,在校园网中拥有自己的站点和主页也是必然结果;利用网络为本院师生服务不仅是未来发展的必然也是体现一个技术科学学院风采的最佳途径。
因此,在谢俊屏老师的建议下和指导下,我利用HTML、ASP、JavaScript等语言,并结合Microsoft FrontPage、PhotoShop等工具设计并制作了反映我学院特色的网站。
第一章 网站设计思想及开发工具简介
1.1 设计思想
眼睛是心灵的窗户,而计算机学院网站也应是展现计算机学院风采的窗口。通过此网站,全面宣传、展示学院风采;发布内部的重大信息;增强学生与教师之间的沟通;并使学院领导能在Internet上完成部分校务,提高办事效率;通过提供客户端的网上查询、交流工具,服务器端的管理平台,来加强对学生的管理、提高信息的宣传力度。
最后应使网站界面清新、统一且有层次,尽量使每一位用户满意、放心。
1.2 开发工具的选用及介绍
ASP简介
Active Server Pages (ASP)是服务器端的脚本编写环境,您可用它来创建动态 Web 页或生成功能强大的 Web 应用程序。ASP 页是包括 HTML 标记、文本和脚本命令的文件。ASP 页可调用 ActiveX 组件来执行任务,例如连接到数据库或进行商务计算。通过 ASP,可为您的 Web 页添加交互内容或用 HTML 页构成整个 Web 应用程序,这些应用程序使用 HTML 页作为您的客户的界面。
ASP的特点:
任何文本类开发工具皆可开发ASP程序,只要使用一般的编辑程序,如Windows记事本就可以,当然,其他网页编辑工具,例如,写字板、FrontPage等也都可以,不过还是建议你用所见即所得的网页编辑工具来写ASP,即方便,又能立即看到效果。由于ASP程序是在网络服务器端中执行,执行结果所产生的标准HTML文件在不同的浏览器中都能正常浏览。其主要特点如下:
1、语言相容性高
ASP与所有的ActiveX Script语言都相容,除了可结合HTML,VBScript、Java Script、ActiveX服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言。
2、隐密安全性高
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因为ASP程序先在网站服务(Web Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用,也不会因为别人分析源代码破绽而对网站进行恶意攻击。
3、易于操控数据库
ASP可以轻易地通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如:SQL、Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是“Excel”文件当成数据库用,且语法简单,完全支持SQL语言查询。
4、面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种能力强大的内建对象:Request、Response、Server、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存和传递有用的信息。
5、强大的可扩充性
ActiveX Server Components(AxtiveX服务器元件)具有无限的可扩充性。可以使用Visual Basic、Java、Visual C++、COBOL等编程语言来编写您所需的ActiveX Server Components.
工具选用
鉴于ASP语言的以上特点,所以我就以ASP语言为编程语言;鉴于Micosoft Acess 数据库的简单易用及Microsoft FrontPage的可视化设计界面便于总体设计与代码编辑,固选用Micosoft Acess 为数据库,选用Microsoft FrontPage编辑软件来设计与开发宝鸡文理大学计算机系网站。
第二章 网站总体分析与设计
2.1 网站系统分析
根据前面的设计思想进行分析,按照系统开发的基本观点对网站进行分解,从内容上可对网站作如下划分:
学院概况 通过学院简介、专业设置对学院的基本情况进行介绍;
机构设置 介绍学院内各大机构的设置情况;
教学前线 通过课程简介、教学计划来呈现;
学子天地 通进学生机构、成绩查询、毕业生去向来呈现;
教师规划 介绍师资队伍及学院对未来的师资规划;
师生互动 通过一个论坛形式的程序来达到师生互动的目的;
后台管理 通过后台实现管理员、学生及话题等项目的管理。
2.2 总体设计
网站主页采用静、动相结合的方式,即静态的说明性文档和动态的数据相结合,体现学院的勃勃生机,静态主页主要介绍学院的概况 、教学计划等内容,对于学生信息及师生互动栏目,就得利用ASP与数据库相结合的技术建立数据库查询,采用交互式的动态页面来实现。
以下为网站的总体框架:学院概况
首页
机构设置
教学前线
学子天地
教师规划
师生互动
联系我们
后台管理
宝鸡文理大学计算机学院
学院简介
专业设置
课程简介
教学计划
学生机构
成绩查询
毕业生去向
我要发言
查看话题
学生管理
话题管理
管理员管理
网站总体结构框架图
2.3 数据库设计
数据表的建立
采用的数据库是Microsoft Access 数据库,拟建立*.mdb库文件,包含如下几个表文件:
各数据表单如下:
admin 管理员信息表
字段名称
数据类型
说 明
id
自动编号
给管理员编号
name
文本
管理员登陆名称
password
文本
管理员登陆密码
content
备注
备注内容
Dateandtime1
日期/时间
保存最后登陆时间
Dateandtime2
日期/时间
中间变量
student 学生信息表
字段名称
数据类型
说 明
id
自动编号
给学生编号
name
文本
学生的名称
password
文本
学生登陆密码
sex
文本
学生性别
age
文本
学生年龄
add
文本
家庭住址
num
文本
学生的学号
S1-S18
数字
成绩1-18
islive
文本
是否毕业
job
文本
工作地址
graduate
数字
毕业年份
speciality
文本
所学专业
topic 话题信息表
字段名称
数据类型
说 明
id
自动编号
给话题编号
istopic
数字
是话题还是回复
smallid
数字
某个ID的回复
Name
文本
发言人姓名
Sex
文本
发言人性别
Ident
文本
发言人身份
Subject
文本
发言主题
Content
备注
发言内容
dateandtime
日期/时间
发言时间
View
数字
阅读次数
answer
数字
回复次数
数据安全
为了保证数据库中数据的安全,需要对数据库及其数据提供安全保障,在这里主要对数据库做了如下动作:
1.为避免数据库被下载而导致泄漏数据资料,固根据浏览器对地址解析时只解析至“#”而结束这一机理,将数据库更名为带有“#”号的名称,以达到隐蔽数据库并始之不能被下载的目的;
2.为避免数据库名被恶意软件猜中而泄漏数据库相关信息,固将数据库的后缀名“.mdb”更名为“.asp”,进一步保障数据库的安全;
3.用数据库软件自带的加密功能对数据库进行加密,使数据库中的数据的安全进一步加强。
第三章 详细设计
3.1 成绩查询
3.1.1 功能
让学生可以通过自己独有的学号及查询密码,查询自己的考试成绩。
3.1.2 组成构造
共分为两个模块
1. 成绩查询表单 search.asp:让学生填写自己的学号及查询密码并提交表单,并对必要项加有代码检查。
2.显示查询结果页面 searchit.asp:核对查询学号、密码,完成查询任务,并将最终查询结果显示出来。
程序流程图
学子天地
成绩查询
显示查询结果
输入查询条件
学生成绩查询流程图
重要代码及实现
searchit.asp部分源程序如下:
<!-- #include file="conn.asp" --> <!— 包含数据库连接文件 -->
<%
dim num,pwd,flag
flag=0
num=request("num")
pwd=request("password") <!— 获取查询条件 -->
set rs=server.createobject("adodb.recordset") <!— 建立数据库连接 -->
sql="select * from student where num='"&num&"' and password='"&pwd&"'"
rs.open sql,conn,1,1 <!— 按条件查询并打开数据库 -->
if not rs.eof then
%>
如下为 <b><%=rs("name")%></b> 同学的成绩单。
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#e6e6e6" width="500">
<tr bgcolor=#eeeeee>
<td width="58" height=20 align="center"><b>姓名</b></td>
<td width="68" height=20 align="center"><b>微机原理</b></td>
<td width="71" height=20 align="center"><b>高等数学</b></td>
<td width="70" height=20 align="center"><b>汇编语言</b></td>
<td width="64" height=20 align="center"><b>C语言</b></td>
<td width="81" height=20 align="center"><b>TCP/IP</b></td>
<td width="81" height=20 align="center"><b>数据库</b></td>
</tr>
<tr> <!— 在客户端显示查询结果 -->
<td width="58" height=20 align="center"><a href="###" title=" 学生信息
------------------------
姓名:<%=rs("name")%>
性别:<%=rs("sex")%>
年龄:<%=rs("age")%>
住址:<%=rs("add")%>
学号:<%=rs("num")%>
------------------------"><%=rs("name")%></a></td>
<td width="68" height=20 align="center"><%=rs("s1")%></td>
<td width="71" height=20 align="center"><%=rs("s2")%></td>
<td width="70" height=20 align="center"><%=rs("s3")%></td>
<td width="64" height=20 align="center"><%=rs("s4")%></td>
<td width="81" height=20 align="center"><%=rs("s5")%></td>
<td width="81" height=20 align="center"><%=rs("s6")%></td>
</tr>
</table> <!— 若查询条件不满足,输出错误信息 -->
<%
Else
end if
rs.close ‘关闭数据库及断开连接
conn.close
set rs=nothing
set conn=nothing
%>
3.2 毕业生去向
3.2.1 功能
按特定方式查询并显示符合条件的已毕业学生名单,并可以查看到这些学生的其它相关信息。
3.2.2 组成构造
共分为两个模块
1. 显示结果页面 islive.asp:在数据库中查询符合要求的学生信息,并以列表分页方式显出已毕业学生姓名、毕业年份、所学专业及毕业去向,内含一个查询表单,并有相应表单处理程序。
2. 显示详细情况页面 viewit.asp:显示已毕业学生个人信息、成绩信息、专业信息及毕业去向等。
程序流程图
学子天地
显示所有毕业学生信息
显示特定查询结果
毕业学生信息查询流程图
选择不同查询条件
毕业生去向
显示毕业生的全部内容
重要代码及实现
islive.asp部分源程序如下:
<form action=islive.asp method=post><!— 毕业生去向查询表单设计及源程序 -->
按毕业年份查询:
<select size="1" name="graduate" style="background-color: #fcfcfc; border: 1 solid #e6e6e6">
<option value="">请选择</option> <!— 循环产生毕业年份 -->
<%for i = 2000 to 2021 %><option value="<%=i%>"> <%=i%></option>
<% next %>
</select> 按专业查询:
<select size="1" name="speciality" style="background-color: #fcfcfc; border: 1 solid #e6e6e6">
<option value="">----请选择----</option><!— 对毕业专业列表 -->
<option value="计算机应用">计算机应用</option>
<option value="计算机教育" >计算机教育</option>
<option value="平面设计" >平面设计</option>
<option value="信息与计算科学" >信息与计算科学</option>
</select>
<input type=submit value=" 查询 ">
</form>
<%
const MaxPerPage=15 ‘每页显示最大数据条数
dim totalPut, CurrentPage, TotalPages, i, j ‘定义分页显示所需变量
if not isempty(request("page")) then
currentPage=cint(request("page")) ‘取得页号
else currentPage=1
end if
dim graduate, speciality, mystring ‘定义变量并获取查询条件
graduate = request("graduate")
speciality = request("speciality")
‘根据查询条件以不同形式打开数据库并显示查询条件
if graduate = "" and speciality = "" then
sql="select * from student where islive = '是' order by id desc"
mystring="以下为全部毕业生名单。"
elseif graduate <> "" and speciality = "" then
sql="select * from student where islive = '是' and graduate ="&graduate&" order by id desc"
mystring="您的查询条件为:查询 <font color=red><b>"&graduate&"</b></font> 年内的所有毕业生。"
elseif graduate = "" and speciality <> "" then
sql="select * from student where islive = '是' and speciality ='"&speciality&"' order by id desc"
mystring="您的查询条件为:查询专业为 <font color=red><b>"&speciality&"</b></font> 的所有毕业生。"
elseif graduate <> "" and speciality <> "" then
sql="select * from student where islive = '是' and graduate ="&graduate&" and speciality ='"&speciality&"' order by id desc"
mystring="您的查询条件为:查询 <font color=red><b>"&graduate&"</b></font> 年毕业且专业为 <font color=red><b>"&speciality&"</b></font> 的所有毕业生。"
end if
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1 ‘建立记录集并打开数据库
%>
<%=mystring%> <!— 在客户端显示查询条件 -->
……
<%
sub showContent
dim i
i=0
while not rs.eof and i < MaxPerPage ‘循环输出查询结果
%>
<!— 显示查询结果 -->
<td width="58" height=20 align=center><a href="###" onclick=popwin("viewit.asp?id=<%=rs("id")%>")><%=rs("name")%></a></td>
<td width="62" height=20 align=center><%=rs("graduate")%></td>
<td width="108" height=20 align=center><%=rs("speciality")%></td>
<td width="269" height=20> <%=rs("job")%></td>
</tr>
……
<%
dim n ‘产生并显示分页
if totalput mod maxperpage=0 then n= totalput \ maxperpage
else n= totalput \ maxperpage+1
end if
response.write "<p align='center' vAlign='bottom'>名单分页 "
response.write "<a href="&filename&"?page="&CurrentPage-1&" alt=上一页><b>上一页</b></a>"
response.write " <a href="&filename&"?page="&CurrentPage+1&" alt=下一页><b>下一页</b></a> "
response.write " 第<strong><font color=red>"&CurrentPage&"</font>/"&n&"</strong>页"
response.write " <b> 共"&totalput&"</b>名学生 <b>"&maxperpage&"</b>名学生/页"
%>
3.3 师生互动
3.3.1 功能
学生或老师都可以在上面发布一些信息或留下意见建议等,如果某学生有学习生活等方面问题时,可以在上面发布信息,让大家一起讨论怎样去解决,还可以针对某些问题作出的回答,达到学生与教师相互交流的目的。
3.3.2 组成构造
共分为四个模块
1. 显示所有话题页面 topic.asp:在数据库中查询符合要求的话题信息,以列表分页方式显出话题的部分或全部内容,并显示出话题的作者、被浏览次数、回复次数及话题提交时间。
2. 显示详细情况页面 viewtopic.asp:显示某个话题的内容及所有针对此话题的回复内容,内含一个对此话题发表评论的表单。
3. 添加新的话题表单 addtopic.asp:发表新话题时所需填写的各项内容,如发言人姓名、性别、身份、发言主题及发言内容,并对必要项加有代码检查。
4. 表单处理程序 savetopic.asp:将由addtopic.asp传过来的各项数据保存在数据库中,并将页面导向显示话题页面viewtopic.asp。
程序流程图师生互动
显示所有话题
师生互动栏目操作流程图
查看话题
我要发言
显示特定话题内容及回复
添加新的回复
重要代码及实现
savetopic.asp部分源程序如下:
<!-- #include file="conn.asp" --> <!— 包含数据库连接文件 -->
<!-- #include file="inc/include.inc" --> <!— 包含数据处理函数 -->
<% set rs=server.createobject("adodb.recordset")
sql="select * from topic where id=null" ‘建立数据记录集并打开topic表文件
rs.open sql,conn,1,3
rs.addnew ‘新建一个记录集
rs("istopic") = 1 ‘获取表单数据并将数据保存在数据库中
rs("name") = request.form("name")
rs("sex") = request.form("sex")
rs("ident") = request.form("ident")
rs("subject") = request.form("subject")
rs("content") = htmlchanage(request.form("content"))
rs("dateandtime") = now()
rs.update ‘刷新数据库
rs.close ‘关闭数据库连接
conn.close
set rs=nothing
set conn=nothing
response.redirect("topic.asp") ‘网页重定向至话题显示页面
%>
3.4 后台管理
3.4.1 功能
对所有动态数据进行管理。可完成功能包括查看、添加、修改、删除学生或管理员信息;删除话题或某些回复内容。此模块是内容最复杂、完成功能最多的模块。
3.4.2 组成构造
共分为十四个模块
1. 后台登陆页面 manage.asp:供管理员登陆管理系统后台。
2. 检验管理员名称及密码页面 checklogin.asp:检验传送的用户名及密码是否正确,若正确则写入cookies值,并将页面导向管理页面。
3. 管理项目列表页面 manageit.asp:提供所有管理项目列表,并提供一个内置窗口供显示待管理页面用。
4. 系统添加表单 addnew.asp:可以输入待添加学生或管理员信息,并对必要项加有代码检查。
5. 添加处理页面 save.asp:将由addnew.asp提交的内容,根据不同信息类型,如学生信息或管理员信息,加以区分处理,并存入数据库中。
6. 管理员管理页面 manage1.asp:将所有管理员的用户名及管理密码以列表方式分页显示,并附有相应操作选项。
7. 显示管理员或学生信息页面 view.asp:根据不同参数显示管理员或学生信息,并附以相应快捷操作。
8. 修改管理员或学生信息表单 modify.asp: 根据不同参数显示管理员或学生信息,并附以相应快捷操作。
9. 保存修改信息页面 savemodify.asp:根据传递参数的不同,将由modify.asp传递的信息加以处理并保存。
10. 话题管理页面 manage2.asp: 将所有话题以列表方式分页显示,并附有相应操作选项。
11. 回复管理页面 managereply.asp: 将相应话题及其回复内容以列表方式分页显示,并附有相应操作选项。
12. 话题删除页面 del.asp:根据要求将学生信息、管理员信息、话题或话题回复内容删除。
13. 学生信息管理页面 manage3.asp: 将所有学生的姓名、性别、学号、家庭住址以列表方式分页显示,并附有相应操作选项。
14. 退出系统文件 exit.asp:清除cookie值,并关闭后台管理窗口。
程序流程图
管理入口
后台管理程序操作流程图
系统添加
管理员管理
话题管理
退出管理
学生管理
数据处理
管理员列表
话题列表
学生列表
查看
修改
删除
查看
管理
删除
查看
修改
删除
管理回复内容
查看
删除
相应数据列表
重要代码及实现
checklogin.asp源程序如下:
<!--#include file=conn.asp-->
<%
session("adminok")="" ‘若对象session("adminok")中有值,清除掉其值
username=trim(request("name"))
password=cstr(Request("password")) ‘获取登陆用户名及密码
dim flag ,userid
flag=0
set rs=server.createobject("adodb.recordset")
sql="select * from admin where name=’"&username&”’ and password=’”&password&”’” ‘建立记录集并打开admin数据表文件
rs.open sql,conn,1,3
if not rs.eof and not rs.bof
‘检查所匹配的数据项是否为空,如果是rs.eof(最末尾)或rs.bof(最开始),则所提供的用户名及密码有误
flag=1 ‘设置临时变量,记录此用户名及密码为真
userid=rs("id")
rs("dateandtime1") = rs("dateandtime2") ‘用中间变量完成最后访问时间的存储
rs("dateandtime2") = now()
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
if flag <> 1 then ‘判断标志变量是否为1,若不为1,则输入用户不符合要求,输出出错信息
else
session("adminok")="1110"
‘如果用户名及密码正确,写入session对象,并使网页重定向至管理页面
response.redirect "manageit.asp?userid="&userid
end if
%>
3.5 重点代码的设计
可重用代码设计
由于多数网页中都有网页主导航及网页底部的版权信息,还有几乎所有动态交互页面都要调用数据库,为避免代码过度重复,固将这些可重用代码放在一个文件中,需要用时,只需用包含命令 <!-- #include file=“f
展开阅读全文