网上校友录的设计与实现教材.docx
- 文档编号:17263406
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:21
- 大小:621.47KB
网上校友录的设计与实现教材.docx
《网上校友录的设计与实现教材.docx》由会员分享,可在线阅读,更多相关《网上校友录的设计与实现教材.docx(21页珍藏版)》请在冰点文库上搜索。
网上校友录的设计与实现教材
ASP.NET课程设计
学院名称:
计算机工程学院
专业:
计算机科学与技术
学期:
12~13-1日期:
12.25~01.06
班级:
10计1学号:
******22
姓名:
张栋梁教师姓名:
蔡秋茹
学分:
3.5成绩:
网上校友录的设计与实现
【摘要】同学录,又叫校友录,也是校友录网站的简称。
本系统参考了Chinaren校友录的常用功能和模式,结合平常了解到的班级同学的实际需求,实现了班级成员之间常用信息的共享、班级留言、班级通讯录、学校和班级的查询、班级管理和系统后台管理等功能。
该系统前台使用MicrosoftVisualStudio.NET2005中的ASP.Net技术进行开发,后台数据库采用ACCESS2003,并通过IIS进行发布。
本文主要介绍了本课题的研究背景、完成的功能和各个模块的详细设计过程。
【关键词】同学录;数据库;ASP;Access
【实验要求】
本课题是用ASP.NET技术来实现的。
主要包含以下内容:
1.登录信息管理:
包含用户注册、用户登录和修改个人信息功能。
2.班级信息管理:
包含班级的创建和维护功能,以及班级照片管理功能。
3.通信录的管理:
包含添加、查看、修改和删除教师与学生的通信录。
4.留言消息管理:
包含发表、编辑、查看和删除留言消息功能。
5.管理员的功能:
对注册用户和用户建立的班级进行管理并对网站的参数进行定义的功能。
网站建设的主要基本目标为:
1.登录信息管理:
对于普通用户,只有通过用户注册,注册成功后才可以登录本系统;用户还可以通过修改个人信息功能对自己的信息加以修改。
而管理通过登录,实现对网站更好的服务和管理。
2.班级信息管理:
通过对班级管理员的申请,进行对班级的信息,成员进行管理。
3.通信录的管理:
通过添、删、改等基本操作完善教师与学生的通讯信息。
4.留言信息管理:
通过添、删、改等基本操作用户可以留言;或发表论坛新主题,对其主题进行回复,当然还可以进行编辑、删除主题与回复,从而实现论坛上的交流。
5.管理员的功能:
通过此功能实现对注册用户和用户建立的班级进行管理并对网站的参数进行定义。
1引言
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。
作为Internet上一种先进的,易于被人们所接受的信息检索手段,WorldWideWeb(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。
据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。
近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面,使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。
各种在线服务系统,更是深刻的影响了人们的联系方式,使得人们可以在远隔千里之遥随时通讯。
过去的种种陈旧的联系方式,已经不能满足现代生活的需要。
同学录作为一种方便校友之间联系的实用系统便应运而生。
本同学录系统是为班级同学之间进行交流和联系提供的一个平台,通过提供完善的同学录服务和规范同学录的管理,可以达到增进校友之间、校友与母校之间的感情,方便校友联系的目的。
本同学录系统,全面宣传,展示班级风采、优点与特色,发布最近的活动安排,使大家彼此相互了解,增强感情、学生与学校之间的联系,在Internet网上,使同学录成为同学之间联系最方便的桥梁。
在这里大家可以交流自己的最近的所得所失,生活感悟,放飞心灵。
2开发环境及相关技术
2.1.1ASP.NET2.0简介
ASP.NET2.0是继ASP.NET1.x之后的一种WEB应用程序开发平台。
它为用户提供了的可视化开发环境,并在生产效率、灵活性和可扩展性、性能、安全性、完整性上更加完善,在操作及代码编写上更加简捷、方便。
2.1.2ASP.NET2.0发展历程
ASP.NET是一个WEB应用程序开发平台,开发人员可以通过ASP.NET实现动态网站的开发及维护。
ASP.NET是作为.NET框架体系结构的一部分推出的。
2000年ASP.NET1.0正式发布。
2003年ASP.NET升级为1.1版本。
ASP.NET1.1发布之后更加激发了WEB应用程序开发人员对ASP.NET的兴趣,于是在2005年11月微软公司又发布了ASP.NET2.0。
ASP.NET2.0的发布是.NET技术走向成熟的标志。
ASP.NET2.0技术增加了大量方便、实用的新特性,使WEB开发人员可以更加快捷方便地开发WEB应用程序。
下边首先介绍一下ASP.NET增加的新特性。
2.1.3ASP.NET2.0新特性
从2000年.NET技术的崭露头角,到2005年.NET2.0的推出,微软公司为推广.NET技术可以说是不遗余力,尤其是作为WEB应用程序开发的核心技术,ASP.NET2.0更是万众瞩目。
ASP.NET2.0将应用程序代码行数减少约70%,可以使开发人员将注意力转移到如何实现业务逻辑上,尽量做到在不写或者少写代码的情况下也可完成任务。
新增的服务器控件和包含新增功能的现有控件,可以轻松、快捷地创建ASP.NET网页和应用程序。
在页面框架方面,ASP.NET2.0同样做出了重大的改进:
使用母版页提供一致的布局、使用主题和皮肤可以为站点创建一致的外观。
2.1.4.NETFramework
.NETFramework是微软公司推出的完全面向对象的软件开发与运行平台。
.NETFramework具有两个主要组件:
公共语言运行库(CommonLanguageRuntime,简称CLR)和.NETFramework类库。
公共语言运行库是.NETFramework的基础。
它为多种语言提供了一种统一的运行环境。
可以将运行库看作一个在执行时管理代码的代理,代码管理的概念是运行库的基本原则。
以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。
.NETFramework的另一个主要组件是类库,可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面(GUI)应用程序,也包括基于ASP.NET所提供的最新创建的应用程序(如WEB窗体和XMLServices)。
2.2ACCESS2003技术简介
Access2003就是关系数据库开发工具,数据库能汇集各种信息以供查询,存储和检索。
那么什么叫数据库呢?
数据库(Database)是由一些有意义和有关系的数据(data)所组合而成。
一个数据库中,包含了许多条记录(Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据。
所以数据库的严格定义是一组相关记录的集合,而字段则是最基本的数据项,也是数据库中最小的单位。
在计算机中用来帮我们管理数据库的系统,我们称之为数据库管理管理系统(DatabaseManagementSystemDBMS)。
数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用。
Access的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Access允许创建自定义报表用于打印或输出数据库中的信息。
Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
3系统分析
中国同学录网的调查显示用户最关心的是:
班级信息、班级留言、同学联系方式和同学照片等。
不同用户对系统的需求不同,但是基本功能需求是一致的,包括:
对学校以及班级的管理,用户可以创建自己所在的学校或班级;对班级留言的管理,用户可以在班级里查看、添加或修改留言;对班级通讯录的管理,用户可以查看班级成员的相关信息。
考虑到网络的现况和同学的各种需求,系统应该具有各方面的交流能力和实时的用户反馈信息,能够实现留言、上传照片、评论等功能,同时具有方便的后台管理功能。
同学录系统能够实现同学们生活中的交流,拥有自己的空间,方便同学们之间的联系。
最终同学录系统包括如下功能:
(1)用户注册登录功能
要使用同学录系统中发布信息的功能,首先要成为注册用户。
在填写个人信息,成为系统中注册用户后,才能拥有系统设置的权限分配不同的操作权限。
注册用户只有登录同学录系统之后,才可以使用系统提供的功能。
(2)用户信息修改功能
用户信息包括用户基本信息和密码。
如果注册用户的一些基本信息需要修改,就要通过资料修改页面来完成资料的更新。
为了保障用户私人信息的安全,用户应该经常更换自己的密码,以确保遭到他人的恶意破坏,密码被盗,个人的隐私泄露。
(3)学校班级管理功能
如果不存在用户所在学校或班级,可创建学校和班级,并与用户绑定。
(4)留言功能
留言功能将长期保留在数据库,允许用户可以动态管理自己的留言信息,如添加和删除留言等功能。
(5)通讯录功能
注册用户可以查看同班同学的通讯录,与远方同学通讯。
(6)搜索功能
搜索学校和班级,并能与用户进行绑定。
(7)后台管理功能
主要是对整个网站的管理,包括网站的数据,网站的排版和网站的动态更新功能。
4系统设计
4.1系统体系结构图
本系统是基于B/S结构来设计实现的,主要包括四个模块:
注册登录模块、用户留言模块、搜索模块和后台管理模块。
结构图如图1:
本系统主要数据有三部分:
学生信息、学校班级信息和留言板信息。
都通过用户录入的方式存储于数据库中,保存在各功能数据表里。
以用户查询的途径进行输出,数据流程图如图4-1所示。
图4-1网站数据流程图
数据库E-R图分析
数据库表的设计,在确定了各个表主键字段的基础上,通过表与表之间相关字段之间的联系建立起各表之间的对应关系,表与表之间的关系是主表与子表之间确立的一种约束,用于实现表与表之间的数据参照完整性,这些关系的建立可以避免由于误操作导致数据库的崩溃,保证各表之间数据的一致性和完整性。
现实各个表的实体与属性之间的关系。
学生注册信息实体图,如图4-2所示
图4-2学生信息实体图
(2)学校注册信息实体图,如图4-3所示
图4-3学校信息实体图
(3)班级注册信息实体图,如图4-4所示
图4-4班级信息实体图
(4)留言信息实体图,如图4-5所示
图4-5留言信息实体图
根据需求分析和实体图的设计,系统的E-R图如图4-6所示
图4-6校友录网站系统E-R图
4.2数据表的设计
在需求分析、系统分析的基础上,本系统设计了7张表:
用户信息表(Userinfo)、省份信息表(Prove)、城市信息表(City)、学校信息表(School)、班级信息表(Classinfo)、班级类型信息表(Classtype)和留言信息表(Board)。
(1)用户信息表Userinfo
用户信息表Userinfo用来保存系统中所有注册用户的资料,表Userinfo的结构如表1所示。
表1
编号
列名
说明
1
u_id
用户编号
2
u_name
用户名称
3
u_account
帐号
4
u_pwd
密码
5
u_grp
用户组
6
u_class
班级编号
7
u_sex
性别
8
u_bth
生日
9
u_tel
电话
10
u_addr
地址
11
u_email
E_mail
12
u_qq
QQ号
u_id字段是该表的主键,它惟一标识每个记录。
u_class字段与表Classinfo的cl_id相关联,且表Userinfo和表Classinfo为多对一的关系。
(2)省份信息表Prove
省份信息表Prove用来保存全国各地的省、市、自治区信息,表Prove的结构如表2所示。
表2
编号
列名
说明
1
p_id
省份编号
2
p_name
省份名称
p_id字段为该表主键,它惟一标识每条记录。
(3)城市信息表City
城市信息表City用来保存全国各地的省、市、自治区信息,表City的结构如表3所示。
表3
编号
列名
说明
1
c_id
城市编号
2
c_name
城市名称
3
c_pid
省份编号
c_id字段为该表主键,它惟一标识每条记录。
c_pid字段与表Prove的p_id相关联,且表City和表Prove为多对一的关系。
(4)学校信息表School
学校信息表School用来保存系统中所有学校的信息,表School的结构如表4所示。
表4
编号
列名
说明
1
s_id
学校编号
2
s_name
学校名称
3
s_pid
省份编号
4
s_cid
城市编号
5
s_erea
地区
6
s_type
学校类型
7
s_num
班级数量
8
s_http
网址
9
s_who
管理员
10
s_delflag
删除标志
s_id字段为该表主键,它惟一标识每条记录。
s_pid与表Prove的p_id相关联,且表School和表Prove为多对一的关系;另外,s_cid字段与表City的c_id相关联,且表School和表City为多对一的关系。
(5)班组信息表Classinfo
班组信息表Classinfo用来保存系统中所有班组的信息,表Classinfo的结构如表5所示。
表5
编号
列名
说明
1
cl_id
班级编号
2
cl_name
班级名称
3
cl_pid
省份编号
4
cl_cid
城市编号
5
cl_sid
学校编号
6
cl_m1
主管理员
7
cl_m2
副管理员
8
cl_type
班级类型
9
cl_num
成员数量
10
cl_grad
年级
11
cl_delflag
删除标志
cl_id字段为该表主键,它惟一标识每条记录。
cl_pid字段与表Prove的p_id相关联,cl_cid字段与表City的c_id相关联,cl_sid字段与表School的s_id相关联,cl_m1字段和cl_m2与表Userinfo的u_id相关联。
(6)班级类型信息表Classtype
班级类型信息表Classtype用来保存班级类型的有关信息,表Classtype的结构如表6所示。
表6
编号
列名
说明
1
t_id
类型编号
2
t_name
类型名称
t_id字段为该表主键,它惟一标识每条记录。
(7)留言信息表Board
留言信息表Board用来保存用户在班级中的留言信息,表Board的结构如表7所示。
表7
编号
列名
说明
1
b_id
留言编号
2
b_theme
主题
3
b_cnt
内容
4
b_clid
班级编号
5
b_uid
留言人
6
b_date
留言时间
7
b_delflag
删除标志
8
b_editer
编辑人
9
b_edittime
编辑时间
10
b_top
是否置顶
b_id字段为该表主键,它惟一标识每条记录。
b_clid字段与表Classinfo的cl_id相关联,且表Board和表Classinfo为多对一的关系;另外,b_uid字段和b_editer字段与表Userinfo的u_id相关联。
4.3运行界面
初始页面
其核心代码如下:
privatevoidbtnOK_Click(objectserder,EventArgse)
{
strSQL="selectu_idfromuserinfowhereu_account='"+txtAccount.Text.ToString().Replace("'","")+"'andu_pwd='"+txtPwd.Text.ToString().Replace("'","")+"'";
//strSQL="selectu_idfromuserinfowhereu_account='gxy'andu_pwd='123'";
strConn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath("txl.aspx");
cn=newOleDbConnection(strConn);
cn.Open();
cmd=newOleDbCommand(strSQL,cn);
OleDbDataReaderdr=cmd.ExecuteReader();
if(dr.Read())
{
Session["uid"]=dr["u_id"].ToString();
Page.Response.Redirect("welcome.aspx");
}
else
{
lblMsg.Text="用户名或口令有错!
请重新输入!
";
//txtAccount.Text="";
txtPwd.Text="";
//Page.Response.Write(Session.Count);
}
cn.Close();
}
privatevoidbtnCancel_Click(objectsender,System.EventArgse)
{
lblMsg.Text="";
txtAccount.Text="";
txtPwd.Text="";
Page.Response.Redirect("reg.aspx");
}
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处放置用户代码以初始化页面
if(!
Page.IsPostBack)
{
lblMsg.Text="";
txtAccount.Text="";
txtPwd.Text="";
}
btnOK.Click+=newEventHandler(btnOK_Click);
btnCancel.Click+=newEventHandler(btnCancel_Click);
}
}
}
注册
(1)信息查看
图5-16通讯录界面
其核心代码如下:
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处放置用户代码以初始化页面
if(Session.Count==0)Page.Response.Redirect("default.aspx");
else
if(Session["uid"].ToString()=="")Page.Response.Redirect("default.aspx");
strCl2=Request["clid"].ToString();
j=5-strCl2.Length;
for(i=0;i strCl2="0"+strCl2; strConn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath("txl.aspx"); strSQL="select*fromuserinfowhereu_classLIKE'%"+strCl2+"%'"; cn=newOleDbConnection(strConn); da=newOleDbDataAdapter(strSQL,cn); cn.Open(); ds=newDataSet(); da.Fill(ds,"addrlist"); DataList1.DataSource=ds.Tables["addrlist"].DefaultView; DataList1.DataBind(); } 照片上传 其核心代码如下: protectedvoidPage_Load(objectsender,EventArgse) { using(SqlConnectionConnection=newSqlConnection(strconn)) { SqlCommandCommand=Connection.CreateCommand(); Command.CommandText="select*fromimages"; Command.CommandType=CommandType.Text; Connection.Open(); SqlDataReaderreader=Command.ExecuteReader(); DataList1.DataSource=reader; DataList1.DataBind(); } } protectedvoidbtnsubmit_Click(objectsender,EventArgse) { if(FileUpload1.HasFile) { stringfileName=DateTime.Now.ToString("yyyyMMddHHmmss");//格式化时间 stringextension=newFileInfo(FileUpload1.FileName).Extension; fileName=fileName+extension; using(SqlConnectionConnection=newSqlConnection(strconn)) { SqlCommandCommand=Connection.CreateCommand(); Command.CommandText="insertintoimages(filename,description,datetime)values(@filename,@description,'"+DateTime.Now+"')"; Command.CommandType=CommandType.Text; Command.Parameters.Add("@filename",SqlDbType.NChar).Value=fileName
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 校友录 设计 实现 教材
![提示](https://static.bingdoc.com/images/bang_tan.gif)