基于asp的高校材料收集系统(附大部分代码)_第1页
基于asp的高校材料收集系统(附大部分代码)_第2页
基于asp的高校材料收集系统(附大部分代码)_第3页
基于asp的高校材料收集系统(附大部分代码)_第4页
基于asp的高校材料收集系统(附大部分代码)_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要:我国高校对材料的收集本来就存在很多问题,其中一个比较突出的问题就是手工操作程度比较高,在高等学校扩招之前,这个问题并不是很突出,但是随着高校的扩招,高校需要处理的材料比过去增加了一倍以上,如何高效的收集这些材料成为一个急需解决的问题。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能人们已经深刻意识到,它已进入人类社会的各个领域并发挥着越来越重要的作用,同时与我们的生活和工作也息息相关。作为计算机应用的一部分,使用计算机对高校材料进行收集,具有手工收集所无法比拟的优点。例如:收集迅速、查找方便、可靠性高、存储量大、保密性好、成本低等。这些优点能够极大地提高高校材料收集的效率。在以人

2、为本的设计理念下,本系统非常容易被接受,它具有简单实用、便于管理等特点。关键词:材料收集;以人为本;简单实用目录1 课题综述31.1 开发背景31.2 开发意义31.3 实现目标32 系统分析32.1 功能需求32.2 可行性分析42.3 功能模块框图42.3.1 登录模块42.3.2 注册模块52.3.3 管理模块52.3.4 发布模块52.3.5 查询模块62.3.6 统计模块62.3.7 用户上传模块63 系统设计73.1 系统用户维护73.1.1 功能73.1.2 性能73.2 数据库设计73.2.1 数据库概念设计73.2.2 数据库逻辑设计83.2.2 数据库物理设计83.3 详细

3、流程图94 代码编写104.1 登录模块104.1.1 前台代码104.1.2 后台代码124.2 注册模块134.2.1 前台代码134.2.2 后台代码164.3 管理模块174.3.1 前台代码174.3.2 后台代码174.4 材料发布模块184.4.1 前台代码184.4.2 后台代码184.5 材料统计模块194.5.1 前台代码194.5.2 后台代码194.6 材料查询模块204.6.1 前台代码214.6.2 后台代码214. 7 (模块名)224.7.1 前台代码224.7.2 后台代码225 程序调试245. 1 调试过程与步骤245. 2发现的问题255. 3解决的办法

4、256 运行与测试25总 结29致 谢30参 考 文 献311 课题综述1.1 开发背景本次自主实验做得是一个简单的高校教学材料的收集,虽然本次实验是一个比较简单的系统,但要完成它还需要一个团队互相配合、分工协作。此材料收集系统可以帮助教师教学的日常工作,提高工作效率,而且能使教师更快获得自己所需的教学材料,并使教学工作顺利完成,这使得学校能够更加方便的管理老师和学生,而老师也能掌握重要的教学材料,对学生教育能更好更完善,不管对于学校,还是老师和学生而言的都有重大的意义。实际上,本系统的意义不仅仅如此,参与本系统设计与开发的人员的个人开发能力将得到提高,这也是我们磨练自己的一个好机会,动手能力

5、越高,表明能力越强,这对我们今后要面对的社会与工作都是一大帮助。虽然在开发过程中会遇到许多问题,但通过小组人员的齐心协力,这些难题也能够迎刃而解。再此过程中更是学习和巩固了数据库、ASP等概念,本次实验收获颇丰,意义重大。1.2 开发意义本次实验开发的是一个高校材料收集管理系统,在实验过程中很好的解决了各种问题。在该系统中用到了ASP.NET 2008、SQL Server 2000等工具,有效的完成了材料的上传、发布、统计和查询等功能。1.3 实现目标本系统主要实现的目标:帮助教师快捷简单的上传教学材料,完成教学任务。而管理员可以发布和统计材料收集,查询相关材料,即时通知未完成教学任务的教师

6、,从而更加方便快捷的管理和完善教学。2 系统分析2.1 功能需求网络应用环境以Internet/intranet技术为核心。开发者在充分分析需求的基础上,选择采用c#结构。该系统可分为三个部分。第一部分为登录注册,实现不同用户的登录以及普通用户的注册。第二部分为用户上传资料,主要提供用户上传资料的界面。第三部分为管理员管理,可分为三大功能,材料发布实现,材料统计实现,材料查询和打印实现。主要用于实现教师将材料上传,教师对材料的查询管理等功能。2.2 可行性分析可行性分析,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、操作等方面进行分析和研究,以避免

7、投资失误,来保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。1) 经济可行性经济可行性分析是估计项目的成本、效益和技术上是可行的。开发本系统所需要的成本包括:a开发人员薪酬:经估算,开发本系统需要4个人周的工作量,单位人月工作量的薪酬是2000元,因此共需2000元。b其他费用:包括资料费,打印费等,共记1000元。2) 技术可行性技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。此系统中采用Visual studio .Net 2008作为系统的集成开发环境, SQ

8、L Server 2005作为后台数据库管理系统。根据调查,目前所拥有的技术力量完全能够满足要求。因此,从技术可行性的角度考虑,该系统是完全可行的。3) 操作可行性本系统是基于B/S结构的WEB应用,用户界面友好,操作简单,使用人员经过简单的培训即可以掌握系统的使用;本系统的使用将有助于使用人员提高软件项目进度、所产生的文档的汇总的精确性,改善软件开发过程,缩短开发周期,因此本系统的推广不会受到系统使用者的抵触。2.3 功能模块框图2.3.1 登录模块图2.1 登录模块图2.3.2 注册模块图2.2 注册模块图2.3.3 管理模块图2.3 管理模块图2.3.4 发布模块图2.4 发布模块图2.

9、3.5 查询模块图2.5 查询模块图2.3.6 统计模块图2.6 统计模块图2.3.7 用户上传模块图2.7 用户上传模块图3 系统设计3.1 系统用户维护3.1.1 功能普通教师用户可通过注册页面进行注册,管理员只能由DBA进行添加,确保信息的准确性与可靠性。首先管理员发布信息,然后用户上传资料,最后管理员可对资料进行查询和统计。3.1.2 性能要求系统能够同时支持1000人以上维护系统用户信息。3.2 数据库设计3.2.1 数据库概念设计根据用户对整个系统的描述,我们可以知道整个系统的用户人群为两类,即管理员和普通教师用户。管理员可以在后台对普通教师上传的文档进行管理,还可以发布文档收集信

10、息,管理员也应该有对应的登陆信息用来登陆后台系统进行管理。而教师则需要一些登陆信息之外,还可以加入一些个人信息例如姓名,性别,联系方式等。而连接两者的文档信息则需要有文件名,上传时间,状态等对应的属性。教师和文档的关系是1对1。而管理员对文档的信息是1对多。管理员对教师的关系也是1对多。因此,根据此描述,我们可以得到以下E-R图:文档编号ID教师编号ID文件的URL联系电话生日性别管理提交教师账号登陆密码上传时间发布状态登录密码管理员ID管理员账号N 文档教 师 1管理员 1上传信息ID文档性质状态图3.1 系统E-R图3.2.2 数据库逻辑设计对应于上述的E-R图可以得到数据库逻辑设计如下:

11、l 管理员(管理员ID,管理员账号,管理员密码,上传信息ID)l 文档(文档编号ID,上传时间,发布状态,文档性质)l 教师(教师编号ID,教师账号,登陆密码,联系电话,生日,性别)3.2.2 数据库物理设计表3-1 文档材料的物理设计表表3-2 管理员对应的表的物理设计表表3-3登录信息对应的物理设计表3.3 详细流程图登陆管理员界面用户界面用户注册界面材料收集发布材料收集管理材料收集统计材料查询打印用户修改信息用户提交材料提交注册信息返回登陆界面图3.2 业务流程图4 代码编写该部分给出各模块的主要代码及注释。4.1 登录模块4.1.1 前台代码 请先登录系统: 用户名: 密 &

12、nbsp;   码:       没有账号,点此注册: 注册                     页面布局,如图2.1中所示。4.1.2 后台代码登录按钮事件:protected void btnOK_Click(object sender, EventArgs e) if (IsValid = true) string username =

13、this.txtUsername.Text.ToString();/将前台控件值传递至后台变量中 string password = this.txtPassword.Text.ToString(); int userstate = 1; bool check1 = this.RadioButton1.Checked;/判断用户身份 if (!check1) userstate = 0; SqlConnection connection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings

14、Strcon.ConnectionString); connection.Open();/连接数据库 string strsql = SELECT * FROM users WHERE (username = +username+) AND (password = +password+) AND (userstate=+userstate+);/判断用户名、密码 SqlCommand cm = new SqlCommand(strsql, connection); SqlDataReader dr = cm.ExecuteReader(); if (dr.Read()/如果存在,跳转页面 if

15、 (userstate=1) SessionUserName = username; Response.Redirect(userinterface.aspx);/跳至用户页面 else if (userstate = 0) Response.Redirect(manage.aspx);/调至管理员页面 else/清空文本框,跳出错误提示对话框 this.txtUsername.Text = ; this.txtPassword.Text = ; Response.Write (alert(登录账户、密码或身份错误!);); connection.Close(); 4.2 注册模块4.2.1

16、前台代码 注册页面 /客户端验证 $(document).ready(function() $.formValidator.initConfig( formid: form1, onerror: function() ); $(#txtUsername).formValidator( onshow: 不能为空, onfocus: 不能为空, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtRealname).formValidator( onshow: 不能为空, on

17、focus: 不能为空, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtBirthday).formValidator( onshow: 不能为空, onfocus: 参考:2010-1-1, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtPassword).formValidator( onshow: 不能为空, onfocus: 不能为空

18、, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtPassword1).formValidator( onshow: 不能为空, onfocus: 不能为空, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtPhNum).formValidator( onshow: 不能为空, onfocus: 不能为空, oncorrect: 正确 ).re

19、gexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); $(#txtQqNum).formValidator( onshow: 不能为空, onfocus: 不能为空, oncorrect: 正确 ).regexValidator( regexp: notempty, datatype: enum, onerror: 错误 ); ); .style2 width: 602px; 用  户  名: 真实姓名: 性        别:&nb

20、sp;        出生日期: 密        码: 确认密码: 手机号码: QQ  号码:                     返回登录页面 4.2.2 后台代码提交按钮单击事件:protected void btnOK_Click(object sender, EventArg

21、s e) if (IsValid = true)/验证控件是否都通过 string username = this.txtUsername.Text.ToString();/将前台控件值传递至后台变量中 string realname = this.txtRealname.Text.ToString(); string sex=男;/ if (rbf.Checked) sex = 女; DateTime birthday = DateTime.Parse(txtBirthday.Text); string password = txtPassword.Text.ToString(); stri

22、ng phonenum = this.txtPhNum.Text.ToString(); string qqnum = this.txtQqNum.Text.ToString(); int userstate = 1; SqlConnection connection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStringsStrcon.ConnectionString); connection.Open();/打开数据库 SqlDataAdapter mySqlDataAdapter = n

23、ew SqlDataAdapter(); string strsql = INSERT INTO users (username,realname,sex,birthday,password,phonenumber,qqnumber,userstate) values( + username + , + realname + , + sex + , + birthday + , + password + , + phonenum + , + qqnum + , + userstate + );/向数据库中插入数据 SqlCommand cmd = new SqlCommand(strsql,

24、connection); cmd.ExecuteNonQuery(); connection.Close();/关闭数据库 Response.Write(alert(恭喜你,注册成功!);); 4.3 管理模块4.3.1 前台代码实现前台布局,代码略。4.3.2 后台代码材料发布按钮单击事件:protected void btnFB_Click(object sender, EventArgs e) Response.Redirect(fabu.aspx);/跳转至材料发布页面材料统计按钮单击事件:protected void btnTJ_Click(object sender, EventA

25、rgs e) Response.Redirect(tongji.aspx);/跳转至材料统计页面材料查询按钮单击事件:protected void btnsSearch_Click(object sender, EventArgs e) Response.Redirect(search.aspx);/跳转至材料查询页面4.4 材料发布模块4.4.1 前台代码实现前台布局,代码较简单,略。4.4.2 后台代码提交按钮单击事件:protected void btn1_Click(object sender, EventArgs e) if (IsValid = true)/验证控件是否都通过 st

26、ring matename = this.txtMatename.Text.ToString();/将前台控件值传递至后台变量中 string state=; if (DropDownList1.SelectedIndex = 0)/选择材料属性 state = 定向; else state = 不定向; string fabustate = 发布; DateTime uploadtime = DateTime.Parse(txtUploadtime.Text); SqlConnection connection = new SqlConnection(System.Configuration

27、.ConfigurationManager.ConnectionStringsStrcon.ConnectionString); connection.Open();/打开数据库 SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(); string strsql = INSERT INTO message (matename,uploadtime,state,fabustate) values( +matename+ , +uploadtime+ , +state+ ,+fabustate+);/定义插入语句 mySqlDataAdapt

28、er.InsertCommand = new SqlCommand(strsql, connection); mySqlDataAdapter.InsertCommand.ExecuteNonQuery();/用DataAdapter向数据库插入数据 connection.Close();/关闭数据库 Response.Write(alert(更新成功!);); txtMatename.Text = ;/清空 txtUploadtime.Text = ; DropDownList1.SelectedIndex = 0; 4.5 材料统计模块4.5.1 前台代码实现前台布局,代码略。4.5.2

29、后台代码统计确定按钮单击事件:protected void btnOK_Click(object sender, EventArgs e) string matename = txtContent.Text.ToString();/将前台控件值传递至后台变量中 string s1=按时上交; string s2=迟交; int numsum = 0; int numin = 0; int numlate = 0; SqlConnection connection = new SqlConnection(System.Configuration.ConfigurationManager.Conn

30、ectionStringsStrcon.ConnectionString); connection.Open();/打开数据库连接 string strsql = select messageid,state,uploadtime from message where matename= + matename + ;/定义sql语句,查询是否存在该材料 string strsql1 = select count(*) from users where userstate=1;/定义sql语句,查询应交用户数 string strsql2=select count(*) from materia

31、l where matename=+matename+ and upstate=+s1+;/查询按时上交用户数 string strsql3 = select count(*) from material where matename= + matename + and upstate= + s2 + ;/查询迟交用户数 SqlCommand cmd = new SqlCommand(strsql, connection); SqlDataReader reader = cmd.ExecuteReader (); if (reader.Read()/材料存在,则执行查询语句 lmateid.Text = reader0.ToString();/将数据库中的值读入页面文本框中 lstate.Text = reader.GetString(1); luploadtime.Text = reader2.ToString(); reader.Close();/关闭DataReader对象 lmatename.Text

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论