案例8高校网上选课系统有源码Word格式.docx
《案例8高校网上选课系统有源码Word格式.docx》由会员分享,可在线阅读,更多相关《案例8高校网上选课系统有源码Word格式.docx(73页珍藏版)》请在冰豆网上搜索。
③建议功能:
提供选课方案建议,供用户参考;
④保密功能:
为用户保密个人信息,并提供密码修改功能。
另外从系统的性能上考虑,查询应该快速、便捷,数据要及时更新。
考虑到多用户同时操作,系统应具备用户浏览自动排队功能,避免系统因拥挤而崩溃。
2.3系统目标分析
鉴于现在学生在选课时存在不少误区,以及由此产生的选课混乱。
本系统是面向广大学生的查询系统分析的系统,它应该达到以下几个基本目标:
①为学生选课提供辅助决策依据(即建议和指导),帮助学生正确地进行选课;
②为选课提供其他相关信息;
3.系统设计
3.1功能设计
(1)为用户提供选修课成绩的查询服务;
(2)为用户提供下学期的选修课的选择范围,避免学生误选;
(3)为用户提供按课程性质分类的已修课程的学分总数及还需修学分数,使学生在选修下学期课程时作到心中有数。
(4)根据用户兴趣爱好提供多种选课方案,供用户参考;
(5)为用户保密信息,并提供密码修改功能;
(6)为用户提供选修课程的详细信息;
3.2数据库设计
3.2.1数据库组成
本系统数据包括四部分:
1.学生成绩信息数据库:
在这个数据库中,记录了学生从入学开始的所有选修课的成绩。
数据库结构为
表Score98(98级学生课程成绩)
字段名称
数据类型
字段大小
索引
说明
ID
自动编号
长整型
有
记录序号
fStrStudentID
文本
8
无
学号
fStrLessonName
50
课程名称
fIntScore
数字
整型
课程成绩
fIntLessonID
课程编号
表LessonInfo(课程信息)
fIntCredit
单精度型
课程学分
fStrTeacher
26
任课老师
fStrLessonInfo
备注
&
#0;
课程简介
fStrForelesson
100
先修课程
fIntPeriod
总学时
fIntClassPeriod
课内学时
fStrObject
30
授课对象
fStrUnit
开课学院
fStrReferenceBook
80
参考书目
fIntSort
课程类型
2.专业培养计划信息数据库
在这个数据库中,记录了各专业的培养计划,即每学期的选课范围,数据库结构为:
表Plan98(98级选修课程)
fIntno
课程号
双精度型
fIntSemester
课程所在学期
fStrForeLesson
fIntPlan
是否在培养计划
③全校性选修课程信息数据库
在这个数据库中,记录了全校性任选课的信息,数据结构为:
表Plan(各年级选修课学分要求)
fStrGrade
2
年级
fIntNature
自然科学类
fIntCulture
文化素质类
fIntEconomic
跨专业经济类
fIntComputer
计算机类
fIntProfessionalBase
专业基础课
fIntProfessional
专业课
4学生个人信息数据库:
用以记录学生的姓名、学号、学院等个人信息。
数据库结构为:
表Student98(98级学生信息)
fStrStudentName
10
学生姓名
学生学号
学生年级
fIntClass
学生班级
fStrDepartment
所在学院
fStrPassword
学生密码
3.2.2数据流程图
3.3程序设计
3.3.1模块化设计
本系统按功能分为六大模块:
3.3.1.1模块流程图
3.3.1.2模块功能说明
⑴成绩查询模块
根据用户输入的学号信息、从学生成绩数据库中搜索出已经选修的课程的成绩,找类别,显示给用户,并注明是否为培养计划内选修课程。
同时列出各类选修课共需修的学分、已经修的学分和还需修的学分;
⑵选课范围查询模块
根据用户的已经选修课程的成绩和其专业培养计划,确定出用户每类选修课、下学期可选修的范围;
⑶选课建议模块
根据用户成绩、专业培养计划、兴趣爱好,提供多种可供选择的选课方案供用户参考;
⑷课程信息模块
提供信息简介,如学分、学时、教师、课程内容、先修课程等;
⑸其他功能模块
包括修改密码,查看专业培养计划,进入选课系统等。
3.4输入输出设计
3.4.1输入
输入信息应该以简单为准则。
本系统一般仅需用户输入学号与密码,第一次登录时,应输入个人兴趣爱好等。
3.4.2输出
1.输出的基本要求是直观、表达清楚。
本系统采用了表格输出的方式。
并加了一些跳转的功能,帮助用户准确获取信息。
2.输出应该考虑用户需要。
本系统加入了许多快捷链接,是用户根据自己的需要跳过某些步骤。
3.5用户界面设计
本着界面友好、醒目、简洁、大方的原则,本系统作到了以下几点:
1.无背景图案:
可提高速度,使界面简洁;
2.输出信息采用有边表格形式;
3.输入信息采用间隔底色的无边表格形式;
4.文字输出信息:
采用3号字,其他采用2号字。
4.系统使用说明
⑴进入系统以后,看到主界面,在“输入学号”“和输入密码”输入框中输入你的学号和密码,默认密码为“6666”,建议在登录前通过左边“修改密码”项修改你的密码,以便对你的个人信息进行保密;
⑵点击“登录”按钮,系统将分类显示你的以往选修课的成绩和已经修的学分和还应该修的学分;
⑶点击下方的“下一步>
>
查看选课范围”,系统将分类显示你以后可以选修的课程的范围以及课程的部分信息;
⑷点击每门课程后面的“详细信息”,你可以浏览到课程的详细信息,为你选课提供参考依据;
⑸点击界面左边的“重新登录”可以重新登录该系统;
⑹点击“我要选课”可以连接到学校的“学生选课系统”;
⑺点击“培养计划”可以查看你所在专业的培养计划;
⑻点击“我要留言”可以写下你对该系统的意见和建议,以及你对的选课的体会;
5.总结
本系统用ASP开发,数据库系统是Microsoftoffice97的Access。
到目前为止,系统的主要功能如成绩分类查询、选课范围查询、课程信息查询等已经基本实现。
而对于建议功能由于算法复杂以及缺少依据还待于进一步完善。
总之,用ASP开发这样一种辅助决策系统是完全可行的,实际运用证明本系统能够为用户选课带来方便,做到有的放矢,从而避免了盲目性。
附录
6.1参考文献
①《用ASP轻松开发Web网站》刘杰等北京希望电子出版社2000.9
②《ASP网页制作教程》王国荣人民邮电出版社2000.6
③《北方交通大学教学一览》(内部专用)教务处1998.10
④《全校性选修课指导手册》(内部专用)教务处2001.6
6.2源码
文件名称
index.asp
文件大小
10KB
文件说明
首页
<
html>
head>
title>
辅助决策<
/title>
metahttp-equiv="
Content-Type"
content="
text/html;
charset=gb2312"
scriptlanguage="
JavaScript"
!
--
functioncheck(thisform)
{
if(thisform.id.value=="
"
)
{
alert("
请输入你的学号!
);
thisform.id.focus();
return(false);
}
if(thisform.password.value=="
请输入密码!
thisform.password.focus();
if(thisform.id.value.length!
=8)
学号位数不对,请重新输入"
if(thisform.password.value.length>
10)
密码位数太长!
}
functionMM_swapImgRestore(){//v3.0
vari,x,a=document.MM_sr;
for(i=0;
a&
i<
a.length&
(x=a[i])&
x.oSrc;
i++)x.src=x.oSrc;
functionMM_preloadImages(){//v3.0
vard=document;
if(d.images){if(!
d.MM_p)d.MM_p=newArray();
vari,j=d.MM_p.length,a=MM_preloadImages.arguments;
i<
a.length;
i++)
if(a[i].indexOf("
#"
)!
=0){d.MM_p[j]=newImage;
d.MM_p[j++].src=a[i];
}}
functionMM_findObj(n,d){//v3.0
varp,i,x;
if(!
d)d=document;
if((p=n.indexOf("
?
))>
0&
parent.frames.length){
d=parent.frames[n.substring(p+1)].document;
n=n.substring(0,p);
(x=d[n])&
d.all)x=d.all[n];
for(i=0;
x&
d.forms.length;
i++)x=d.forms[i][n];
d.layers&
d.layers.length;
i++)x=MM_findObj(n,d.layers[i].document);
returnx;
functionMM_swapImage(){//v3.0
vari,j=0,x,a=MM_swapImage.arguments;
document.MM_sr=newArray;
(a.length-2);
i+=3)
if((x=MM_findObj(a[i]))!
=null){document.MM_sr[j++]=x;
x.oSrc)x.oSrc=x.src;
x.src=a[i+2];
//-->
/script>
style>
.input{
BACKGROUND-COLOR:
white;
BORDER-BOTTOM:
#0000001pxsolid;
BORDER-LEFT:
BORDER-RIGHT:
BORDER-TOP:
FONT-SIZE:
9pt
/style>
/head>
bodybgcolor="
#FFFFFF"
onLoad="
MM_preloadImages('
pic/rig2.png'
'
pic/sel2.png'
pic/word2.png'
pic/modi2.gif'
pic/myplan2.gif'
pic/dm2.gif'
pic/doc2.gif'
pic/blank.gif'
pic/word2.gif'
pic/exit2.gif'
pic/sel2.gif'
)"
tablewidth="
90%"
border="
0"
cellspacing="
cellpadding="
align="
center"
<
tr>
tdheight="
67"
width="
27%"
valign="
bottom"
divalign="
imgsrc="
pic/Book.gif"
119"
height="
81"
/div>
/td>
73%"
pic/top.gif"
580"
68"
/tr>
/table>
700"
1"
314"
tdwidth="
114"
bgcolor="
#FF9900"
top"
315"
100%"
background="
pic/3800.bmp"
trbgcolor="
31"
fontcolor="
#000000"
size="
2"
ahref="
index.asp"
onMouseOut="
MM_swapImgRestore()"
onMouseOver="
MM_swapImage('
Image3'
'
pic/rig2.gif'
1)"
imgname="
Image3"
src="
pic/rig.gif"
30"
/a>
/font>
32"
astyle='
cursor:
hand'
onClick=window.open('
modifykey/modifykey.asp'
basket'
menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=1,resizable=0,width=365,top=180,left=220,height=235'
)onMouseOut="
Image8'
Image8"
pic/modi.gif"
>
plan.asp'
menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=1,resizable=0,width=700,top=60,left=50,height=450'
Image9'
Image9"
pic/myplan.gif"
http:
//202.112.149.200"
target="
_blank"
Image6'
Image6"
pic/sel.gif"
word.asp'
menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=1,resizable=0,width=590,top=80,left=110,height=340'
Image7'
Image7"
pic/word1.gif"
dm/dm.asp'
menubar=no,toolbar=no,location=no,directorie