学生网上选课系统的设计与实现Word下载.docx

上传人:b****1 文档编号:1229867 上传时间:2023-04-30 格式:DOCX 页数:42 大小:5.32MB
下载 相关 举报
学生网上选课系统的设计与实现Word下载.docx_第1页
第1页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第2页
第2页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第3页
第3页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第4页
第4页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第5页
第5页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第6页
第6页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第7页
第7页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第8页
第8页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第9页
第9页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第10页
第10页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第11页
第11页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第12页
第12页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第13页
第13页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第14页
第14页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第15页
第15页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第16页
第16页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第17页
第17页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第18页
第18页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第19页
第19页 / 共42页
学生网上选课系统的设计与实现Word下载.docx_第20页
第20页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生网上选课系统的设计与实现Word下载.docx

《学生网上选课系统的设计与实现Word下载.docx》由会员分享,可在线阅读,更多相关《学生网上选课系统的设计与实现Word下载.docx(42页珍藏版)》请在冰点文库上搜索。

学生网上选课系统的设计与实现Word下载.docx

createtable表名(字段设定列表);

删库和删表 dropdatabase库名;

droptable表名;

将表中记录清空 deletefrom表名;

显示表中的记录 select*from表名;

将文本数据转到数据库中 loaddatalocalinfile"

文件名"

intotable表名;

(注意:

文本数据应符合的格式:

字段数据之间用tab键隔开)

1.2.2ASP(ActiveServerPage)

ActiveServerPages(ASP)是服务器端脚本编写环境,是由Server端脚本、对象以及组件拓展过的标准主页使用它可以创建和运行动态、交互的Web页和基于Web的功能强大的应用程序.ASP采用的工作模型是典型的B/S过程:

(1)一个用户在浏览器的网址栏中添入ActiveServerPages文件名称,并回车触发这个ActiveServerPages的申请。

(2)浏览器将这个ActiveServerPages的求发送给IIS

(3)WebServer接收这个申请要求并由于其.asp的后缀意识到这是个ActiveServerPag的对象来实现服务器与客户端间的交互;

可扩充服务器端功能.ASP与浏览器无关,ASP可以将运行结果一HTML的格式传送到客户端浏览器,因而可以使用于各种浏览器。

2系统分析

2.1可行性分析

可行性分析是指在当前组织内外的具体条件下,系统开发工作必须具备资源和条件,看其是否满足系统目标的要求。

在系统开发过程中进行可行性分析,对于保证资源的合理使用,避免浪费和一些不必要的失败,都是十分重要的。

(1)目标和方案的可行性:

如果采用人工操作的方式,不仅操作不方便,耗费人力、物力、财力,而且还容易出现错误。

所以当前迫切需要一个计算机化的管理信息系统。

有了这个系统,就能用较少的人力去管理完成较大的工作量,而各种管理的效率也会大大提高。

开发这个系统,能更好地满足学校要求,使学校的各种信息管理实现无纸化,高效化。

(2)技术方面的可行性:

本系统是用ASP结合MySql数据库来开发的一个信息管理软件。

ASP在数据库方面的特长显得尤为突出:

适用于多种数据库结构,通过访问各种数据库通用组件,结合客户端能够创建出完美漂亮且高效的各种软件系统。

(3)经济方面的可行性:

系统结构采用当前流行的B/S结构,对客户的配置要求低,客户端只需要有浏览器可以上网就可以登录服务器进行各种信息的管理。

而服务器端也不需要太高的配置,只要有可以运行asp程序的解释器,可以说整个系统是以最少的投入完成最好的功能,这就保证了系统的经济可行性。

(4)管理方面的可行性:

作为学校教务信息管理系统之一的选课系统,对它的管理也是很方便的,只需要先将系统配置运行起来,然后分配好系统的三个主要角色,就可以投入实际使用,作为系统使用者如管理员,教师和学生基本都是会知道如何进行电脑操作的。

根据以上几方面的可行性分析,可以得出结论:

学生网上选课系统的开发可行。

2.2功能分析

本系统的使用是面向大学院校,系统的使用对象包括系统管理员,教师和学生三种身份,系统管理员登录系统后可以管理学生的信息,管理教师的信息,管理每学期各个班级的必修课程信息,各个专业每个学期的选修课程信息,可以为这些课程进行排课;

而教师用户登录系统后可以查询任意学生的信息,可以查询自己的授课信息,可以登记自己所教学生的成绩信息,可以修改自己的登录密码和个人信息;

学生用户登录系统后可以查询任一学期自己的成绩信息,如果系统开放了选课功能,可以在指定的日期内登录系统后选修该学期的选修课,可以生成某个学期的课程上课信息表,可以修改自己的个人信息和登录密码。

本系统一共有4个主模块(身份验证|学生管理|教师管理|管理员管理),其中每个管理部分又包含了几个子模快,主要功能可概括为为浏览、查询、修改、添加。

2.3系统程序流程图

图3-1 系统程序流程图

3系统总体设计

3.1系统结构设计

3.1.1主要功能

本系统主要功能。

(1)身份验证:

通过登录才可进入选课系统,登录信息提交后检验登录者的身份是否合法,合法,则转入对应的操作界面。

在本系统中,只有三种身份:

学生、教师、管理员。

(2)信息浏览:

信息浏览包括已选课程浏览、已发布课程信息浏览。

已选课程浏览是为学生提供的查看自己已经选择的课程信息以及删除选择课程。

已发布课程信息浏览用于各代课老师查询自己已经发布的课程信息,主要用于浏览、核对。

(3)信息查询:

信息查询包括教师个人信息查询、课程查询、选课查询。

课程查询即查询该课程的相关介绍,包括课程内容、开课地点等内容。

教师个人信息是查看及修改对应的老师个人信息。

通过选课查询可以查看要选择的课程情况。

(4)信息修改:

信息修改包括密码的修改,学生信息的修改,教师信息的修改。

(5)信息添加:

信息添加包括学生选课、教师课程发布、管理员。

学生选课即通过选择选修的课程,添加到学生已选课程中,完成选课任务。

教师课程发布即教师添加新的课程信息,新信息发布后,学生可看到发布的信息。

管理员添加学生、教师、课程的基本信息。

3.1.2系统模块功能图

图3-2 系统功能图

3.2数据库设计

根据系统功能设计的要求以及功能模块的划分,可以列出以下主要数据项和数据库,主要分为6个表:

表Course、表Student、表Teacher、表Admin、表Selected、表Published

表3.1课程信息表(Course)

名称

字段名称

类别

主键

非空

课程编码

CId

int

Yes

教师编号

TId

varchar

No

课程名称

CName

课程类别

CType

供选学院

CCollege

供选专业

CProfessional

学分

CCredit

最多人数

CMax

上课地点

CRoom

课程介绍

CIntroduction

text

表3.2学生信息表(Student)

学号

SId

姓名

SName

性别

SSex

char

所属学院

SCollege

所在专业

SProfessional

班级

SClass

密码

SKey

表3.3教师信息表(Teacher)

身份证号

TName

TSex

TCollege

所属专业

TProfessional

TKey

表3.4管理员信息表(Admin)

登录号

AId

AKey

表3.5学生选课信息表(Selected)

表3.6教师发布课程信息表(Published)

教师证件号

4系统详细设计

4.1身份验证

4.1.1登录功能

在登录页面对应的地方输入用户名(学号或身份证号或其它有效证件),密码;

确认后登录。

在提交后,首先通过学号\身份证号或其它有效证件对数据库中的Student/Teacher/Admin表进行检索,若检索到的记录集为空,则说明学号/身份证号或其它有效证件错误,从而转到相应的出错处理程序,若记录集不为空,再进行密码判断,检查密码是否相等,不相等,作出错处理,相等则转入学生\老师\管理员登录成功的操作页面,并将姓名,密码,学号\身份证号或其它有效证件以session对象保存起来。

出错及系统提示如下:

(1)学号或身份证号或其它有效证件错误,系统这时会提醒“没有该学生!

”或“没有该老师!

”或“没有该系统管理员!

”;

(2)密码错误,系统提示“密码错误”。

4.1.2密码修改功能

密码的修改的前提是用户成功登录,选择密码修改后,按照页面上的提示,在相应的文本框中输入新密码(两次),确定后提交。

转入执行的asp文件后,判断两次输入的新密码是否相等,若不等,出错;

否则,用新密码代替旧密码,更新数据库表Student/Teacher中的“密码”字段。

本系统密码采用MD5加密。

出错及系统提示:

新密码两次输入不同,系统提示“两次输入密码不相符合”。

4.2学生信息管理功能

4.2.1选课信息查询及选课

登录成功后,点击菜单“选修课程”,确定后进入浏览页面。

进入页面后,可以对页面上表格内带链接的信息进行查询,例如点击“教师”可查询教师信息。

要选择课程,点击“选修该课程”后,该课程就会出现在“已选课程”的表格中。

若已选过该课程,系统提示“您已经选了该课程!

”。

4.2.2必修课程信息查询

点击菜单“必修课程”,可看到学生所在专业所开设的必修课程。

其中查询数据库所需要的参数是学生的专业信息传递来的。

专业信息的获得是通过session(SId)对数据表Student查询得到的。

进入页面后,可以对页面上表格内带链接的信息进行查询,例如点击“课程名称”可查询课程信息。

4.2.3已选课程信息查询

点击菜单“已选课程”,在选课信息浏览页面中可以查询已经选的课程。

课程信息的查询是通过条件对数据表Course,表Selected,表Teacher等进行查询,将符合条件的信息列出。

想要退选课程,点击“取消该课程”按钮即可。

4.2.4学生个人信息

点击菜单“学生信息”,进入选课信息浏览页面查询即可。

学生信息的修改首先是通过条件对数据表Student进行查询,符合条件后在文本框中输入完整信息后进行覆盖写入,就可以进行信息修改。

4.2.5密码修改

点击菜单“学生信息”,进入选课信息浏览页面。

按照页面上的提示,在相应的文本框中输入新密码(两次),确定后提交。

否则,用新密码代替旧密码,更新数据库表Student中的“SKey”字段。

4.3教师课程信息管理功能

4.3.1课程信息发布

登录成功后,点击菜单“发布课程”,进入选课信息浏览页面。

如果想要单独查看某专业该教师可发布课程,在查询条件“课程专业”对应的文本框内输入查询信息(不输入信息时,表中显示该教师可发布课程的所有课程信息),点击“查询”按钮,即可查询。

若要发布课程,按要求输入完整信息(课程名称与课程专业不能改变),点击“开设课程”按钮。

若输入信息不完整,系统会提示“请输入……!

当发布的课程的记录已经存在时,系统提示“您已经发布了该课程!

当输入的课程名称或课程专业有误,系统提示“发布失败!

4.3.2对已发布信息查询

  对数据表Course,表Published等进行检索,将其中符合条件的信息全部输出;

查询需要的参数是由session对象获得的身份证号来确定的,由这二者确定出的即是该老师所发布过的课程信息。

想要取消发布课程,点击“取消发布课程”按钮即可。

4.3.3教师个人信息

点击菜单“教师信息”,进入选课信息浏览页面查询即可。

教师信息的修改首先是通过条件对数据表Teacher进行查询,符合条件后在文本框中输入完整信息后进行覆盖写入,就可以进行信息修改。

4.3.4密码修改

点击菜单“教师信息”,进入选课信息浏览页面。

否则,用新密码代替旧密码,更新数据库表Teacher中的“TKey”字段。

4.4系统管理员信息管理功能

4.4.1管理教师功能

教师信息的添加、修改、删除、查询由管理员完成,教师无权使用。

(1)添加:

对数据表“Teacher”进行添加操作,生成新记录。

在管理员登录成功后,选择“教师信息”即进入教师信息添加页面,输入要添加的教师身份证号、教师姓名等教师信息后(初始密码admin),点击添加按钮即可。

输入的教师的身份证号已存在,系统则提示“添加失败,请检查教师证件号是否已经存在!

(2)修改:

在管理员登录成功后,选择“教师信息”即进入教师信息页面。

对数据库中的表“Teacher”查询,在网页相应的的地方显示所要的信息。

列出教师信息表后,在表中查询要修改的教师身份证号后,点击“修改”按钮,修改所要修改的教师的信息,点击“更新”按钮,若不修改,则点击“取消”按钮。

(3)删除:

查询要删除的教师身份证号,点击“删除”按钮进行删除。

(4)查询:

在教师信息页面,输入要查询专业,点击“查询”按钮即可查询该专业的教师情况。

4.4.2管理学生功能

  学生信息的添加、修改、删除、查询功能与管理教师信息基本相同,不再赘述。

4.4.3管理课程功能

  课程信息的添加、修改、删除查询功能与管理教师信息基本相同,不再赘述。

5设计过程中的问题及解决方法

5.1数据库的连接

MySQL与SQLserver的连接方式大致相同,当MySQL与VS连接时,需要组件mysql-connector-net,通过查找及实践,完成了数据库的建立和连接。

如图5-1:

图5-1mysql数据库的连接

数据库连接操作类主要代码:

//数据库连接字符串

privateconstStringconnString=@"

Server=localhost;

Database=ChooseCourse;

Uid=root;

Pwd=sa"

;

//返回select得到的数据集

publicstaticDataSetExecuteSelectSql(stringsqlSelect)

{

MySqlConnectionconn=newMySqlConnection(connString);

MySqlDataAdaptersda=newMySqlDataAdapter(sqlSelect,conn);

DataSetds=newDataSet();

try

{sda.Fill(ds);

 }

catch(MySqlExceptione)

{thrownewException(e.Message);

}

returnds;

//执行insert,update,delete等语句,返回改变的行数

publicstaticintExecuteSql(stringsql)

introws=-1;

MySqlCommandcmd=newMySqlCommand(sql,conn);

conn.Open();

rows=cmd.ExecuteNonQuery();

thrownewException(e.Message);

finally

cmd.Dispose();

conn.Close();

}

returnrows;

5.2参数的传递

在模块的建立时,很多时候发现功能不能正常运行,在检查完程序语句的结构之后,发现并没有错误,于是在检查页面与页面交互时发现了问题,很多地方传递的参数并没有真正的执行,还有些地方没有进行参数的设置,才导致了程序的错误。

5.3公共数据

由于一开始没有使用session对象,致使很多功能无法实现,在学习了session的相关内容后才解决了一些具体的问题,包括网页间的参数的传递,公共信息的保存及提取等。

6系统的实现

6.1登录模块

6.1.1登录模块简介

登录模块在本系统中用于区别学生、教师、管理员。

出于保密性和方便管理等方面的考虑,不同身份在登录本系统后有不同权限。

例如:

学生登录系统后可查询及选课,教师登录系统后可发布课程。

管理员登录系统后可添加教师、学生及课程信息。

通过用户权限,选择正确身份,然后输入用户名(学号或身份证号或其它有效证件)、密码,登录信息提交后检验登录者的身份是否合法,合法,则转入对应的操作界面。

(初始密码均为admin,管理员登录用户名admin)

图6-1登录模块流程图

6.1.2登录模块关键代码

主要代码如下:

protectedvoidbtnLogin_Click(objectsender,EventArgse)

{//登录代码

inttype=Int32.Parse(ddlLogin.SelectedItem.Value);

//用户类型选择分三种,用switch(type)来区分

stringuser=txtUser.Text.Trim();

//用户证件号,文本框内容赋值给user

stringinputkey=txtKey.Text.Trim();

//用户密码,文本框内容赋值给inputkey

stringkey="

"

stringsql="

DataSetds;

switch(type)

{//选择学生,即type值为1,执行case1;

选择教师,即type值为2,执行case2;

选择

系统管理员,即type值为3,执行case3

case1:

//验证学生身份代码

sql="

selectSKeyfromStudentwhereSIdlike'

+user+"

'

//从表Student中查询学号SId为输入证件号"user"的学生密码

ds=Db.ExecuteSelectSql(sql);

//执行select类型的sql语句,返回select得到的数据集

if(ds!

=null&

&

ds.Tables.Count>

0&

ds.Tables[0].Rows.Count>

!

ds.Tables[0].Rows[0].IsNull(0))//判断select得到的数据集是否为空,若为空,

执行else

key=ds.Tables[0].Rows[0][0].ToString();

//将查询到的密码赋值给key

if(MyUtility.MD5(inputkey)==key)//输入密码经过MD5加密,并与key相比较

{//相等,便可成功登陆学生选课管理主页面

Session["

Id"

]=user;

//内置对象Session记录用户登录学号

Type"

]=type;

//内置对象Session记录用户登录类型

Response.Redirect("

StudentMain.aspx"

);

//进入学生选课管理主页面

else//密码错误

{Response.Redirect("

Error.aspx?

code="

+ErrorInfo.ERR_KEYERROR.ToString());

}//系统提示:

密码错误

else//不存在该学生

Response.Redirect("

+ErrorInfo.ERR_NOSTUDENT.ToString());

//系统提示:

不存在该学生

}

break;

case2:

//验证教师身份代码

…//与验证学生身份代码类似

br

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2