web留言板报告.docx

上传人:b****6 文档编号:5534481 上传时间:2022-12-19 格式:DOCX 页数:24 大小:353.15KB
下载 相关 举报
web留言板报告.docx_第1页
第1页 / 共24页
web留言板报告.docx_第2页
第2页 / 共24页
web留言板报告.docx_第3页
第3页 / 共24页
web留言板报告.docx_第4页
第4页 / 共24页
web留言板报告.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

web留言板报告.docx

《web留言板报告.docx》由会员分享,可在线阅读,更多相关《web留言板报告.docx(24页珍藏版)》请在冰豆网上搜索。

web留言板报告.docx

web留言板报告

 

吉林工程技术师范学院

 

WEB课程设计报告

 

名称:

网上留言中心设计报告

专业:

计算机科学与技术

班级:

0842

指导教师:

段珺玮董启明

姓名:

付大伟

学号:

21

完成时间:

2011年7月8日

 

第一章绪论

1.1系统概述

在网络网络技术迅速发展以信息交流频繁的今天,网络应用已经渗透到人类社会的各个角落。

作为网络世界的支撑点的网站,更是人们关注的热点:

政府利用网站宣传自己的施政纲领,日益成为与百姓交流的直通车;企业利用网站宣传自己的形象,进而挖掘无限商机;个人利用网站展示个性风采,创建彼此沟通的桥梁。

越来越多的网站建立了自己的WWW网站。

随着网络技术的不断发展,网络应用已经渗透到人类社会的各个角落。

作为网络世界的支撑点的网站,更是人们关注的热点:

政府利用网站宣传自己的施政纲领,日益成为与百姓交流的直通车;企业利用网站宣传自己的形象,进而挖掘无限商机;个人利用网站展示个性风采,创建彼此沟通的桥梁。

越来越多的企业和个人希望拥有自己的网站,开辟网络世界里的一片天地。

1.2系统开发的目的和意义

BBS系统是最常见的一类网上社区,是Internet上最重要的应用之一。

随着Internet的普及,许多原本只提供Telnet方式登录的BBS系统也提供了允许用户使用HTTP协议方式进行网上交流的功能,Telnet与HTTP的应用界限开始交融。

当用户在网上冲浪访问到一个制作精美、内容丰富的网站时,会想到将自己的喜爱之情告诉网站的制作人。

同样,当用户看到一个不能令人满意的网站时,也会想到将自己的高见留给网站的维护者,希望他们能有所改进。

这时就要用到互动式网络一个重要的功能——留言板系统。

留言板是网站上用户交流信息、相互沟通的乐园。

留言板是一种最为简单的BBS应用。

借助留言板,浏览者可以张贴留言给站长或其他浏览者。

在企业或单位内部的局域网中,留言板提供了员工之间交流的绝好的场所。

留言板可以说是网上最常见的,网站留言管理方式是基于ASP.NET和脚本语言,将动态网页和数据库结合,通过应用程序来处理留言。

 

第二章系统分析

2.1需求分析

留言板就是利用计算机硬件,软件设备和网络基础设施用来记录,展示文字信息的载体,有比较强的时效性。

例如:

如果你想要解决你不知道的一些问题,你可以在上面进行留言,知道的人会对你的问题进行针对性的回答,你还可以继对他的回答进行留言,大家可以很方便的进行交流和沟通,总的来说。

该系统具有5个功能模块:

(1)登录界面:

做出登录界面,然后通过输入用户或者管理员用户名和密码来登录。

(2)留言版面:

做出留言版面,留言者能看到自己的留言,用户名和地址

(3)用户的权利与义务:

用户是普通用户口令登录只可留言,如果用户用管理员口令登录则可以实现对用户留言的回复、删除等功能

(4)留言

留言者在留言时不能为空,若为空时将提醒留言者“留言失败”;成功提交留言时“留言成功”。

(5)后台数据库

采用ADP.NET动态网页技术实现网页与数据库之间的连接,WEB中当一个文件将变量传送到另一个文件后,自动产生一个变量,并通过SQL语句进行数据库操作,从数据库中读出数据,并显示出来。

1.数据库架构

留言板数据库中数据表的字段类型。

包括:

ID(自动递增,不可重复)、标题、内容、姓名、电话、IP、日期、回复内容。

2.过滤垃圾信息

判断用户是否不停输入相同字符的信息,如果相同字符信息重复连续出现4次,将自动视为垃圾留言信息,系统不给予留言或者回复功能。

3.添加、删除、修改数据表项

根据实际应用,可自行添加、删除或者修改数据表中的字段类型,实现灵活化数据库管理功能。

对实用价值不高的字段进行删除,有利于数据从数据库中的读取和存储速度。

4.留言板数据库维护及备份

为管理员提供数据备份功能。

后台管理员可以自定义在某一定时间后,对留言板进行数据备份,便于数据出错后,可以即时恢复正常,保障用户信息不丢失。

2.2技术分析

2.2.1ASP.NET简介

ASP.NET是一个Web开发平台,提供可构建企业级应用所需的服务,编程模型和团建基础结构。

虽然ASP.NET的语法基本上与前辈ASP兼容,但是ASP.NET是一个全新的编程框架,旨在用于快速开发Web应用程序。

作为微软平台的一部分,ASP.NET提供了一种基于构件的,可扩展的且易于使用的方法,用于构件、部署和运行供所有在浏览器活移动设备中使用的Web应用。

2.2.2SQLSever2008简介

SQLSever是一种高性能的关系数据库系统(RDBMS),其主要特点有:

·与Windows9x和WindowsNT集成

·提供企业级的数据库复制

·提供并行的体系结构

·支持超大型数据库

·与OLE对象紧密集成

对客户/服务器用户的一个主要挑战就是中央管理跨整个企业范围内的对个服务器。

SQLSever用一个称为分布式管理框架(DMF)的企业级系统管理框架来实现。

DMF有对象、服务器和用户管理MiccrosoftSQLSever的其他组件组成。

SQLSeverEnterpriseManage位安排和管理多喝服务器提供了一个图形化用户界面(GUI),Sever提供的分布式管理对象(DMO)的能力给SQLSever引擎和服务器提供可一个对行啊接口。

该层包括用户接口组件使用的OLESQLSever对象及任何遵循OLESever引擎和服务的途径。

该层包含数据库引擎的后端,并提供有SQLExecutive所管理的核心管理服务。

2.3可行性分析

2.3.1技术可行性

留言板网站是为了满足人们的需求而产生的,采用B/S三层体系结构,表示层用ASP.NET开发平台,业务层用C#编程语言,数据层用ADO.NET。

后台数据存储用SQLSever2008数据库。

三层结构体系能够负责客户机与服务器、服务器和服务器之间的连接和通信,实现应用与数据库的高效连接:

提供一个三层结构的应用开发、运行、部署和管理的平台。

这三种层结构在曾与曾之间相互独立,任何一层的改变不会影响其他曾的功能。

上述技术使用与本网站的开发。

因此,本网站的开发在技术上是可行的。

2.3.2操作可行性

网站运行于Windows环境,其用户操作页面友好设计“网站导航”便于用户操作。

网站的基本操作如下:

·普通用户

自己留言,也可以观看别人的留言

·管理员

可以对不文明的留言进行删除等操作

 

第三章系统的概要设计

3.1系统的总体设计

3.1.1运行环境

·操作系统:

windowsNT/2000/2003/2007

·安装IIS

·安装SQLSever2008

·安装VisualStudio.NET2010

3.1.2系统流程

后台的业务流程(管理员用户执行操作的流程)如图3.1.1所示

3.1.1后台管理系统业务流程图

 

前台业务流程(普通用户和管理员用户操作的流程)如图3.1.2

图3.1.2前台业务流程图

3.1.3系统结构

本课题的功能模块设计如图3.1.3所示

3.2数据库逻辑结构设计

本课题设计规划的实体有管理员,用户,留言和留言回复板块,本实体的联系如图

1.用户的实体属性

2.管理员的实体属性

3.留言板的实体属性

4..回复留言的实体属性

3.3物理结构设计

本课题目前为数据库建立的4张表。

·管理员的表admin,包括登录密码和登录名

·登录表login,主要记录登录信息,包括ID,name,sex,truename,phone,email,address等基本信息。

·回复用户表guest,主要记录回复用户的信息,包括ID,UserName,sex,url,qq,email,content,reply,posttime。

·留言用户表guesttest,只要记录用户的信息,包括ID,UserName,qq,content,posttime。

 

第四章系统详细设计

本课题总体设计的核心思想主要有以下两点:

页面是一个容器,是由不同的模块组成的,Web页面和用户空间属于表示层,他们用来处理交互,具体功能由业务对象来完成。

4.1界面详细设计

1.学生登陆页面的login.asp的设计

页面采用表单设计,用来让用户输入账号和密码的并检查用户名和密码与数据库里面用户信息表的信息是否一致,如果正确则跳转到留言板的主页normal.asp,否则转到返回到login.asp,继续输入用户名的账号和密码。

若用户还未注册,可以点下面的注册链接,会链接到注册页面Default2.asp。

若要进入管理员登录系统,对留言板系统进行管理,则可以使用admin作为登陆账号和密码。

由于使用Visualstudio2010作为开发工具,用户登录模块可以很简单的完成,添加显示当前时间的代码。

添加了一个服务器行为—用户登录,用来判断用户输入的账号和密码与数据库中的是否一致。

其实现的页面和核心代码如下

if(Convert.ToInt32(cmd.ExecuteScalar())>0)

{

if(this.txtUserName.Text=="admin")

{

Session["admin"]="admin";

Response.Write("");

}

else

{

Session["username"]=this.txtUserName.Text;

Response.Write("");

}

}

else

{

Response.Write("");

}

 

2.用户注册页面Default2.asp:

页面采用表单,插入表格的设计。

注册时需要输入账号、密码、用户名性别等。

提交时,若输入的用户账号存在则要转到login.asp。

可添加服务器行为—用户身份验证—检查新用户名。

如下图所示:

其核心控件代码为为

RequiredFieldValidatorID="RequiredFieldValidator3"runat="server"

ControlToValidate="ReEmail"ErrorMessage="*必须填写">

RequiredFieldValidator>

RegularExpressionValidatorID="RegularExpressionValidator1"runat="server"

ControlToValidate="ReEmail"ErrorMessage="*邮箱格式不正确"

ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">

RegularExpressionValidator>

 

3.留言板页面datalist.asp:

该页面做了一个重复区域,来实现显示该版块所有留言信息。

通过阶段变量显示登录的用户的用户名。

建了两个记录集,发布留言的信息利用服务器行为——插入记录来实现写入数据库的guest.aspx的表。

该页面还添加了一服务器行为——用户身份验证——限制对页的访问。

若未登录访问该地址,则自动跳转到用户登录页面login.asp。

其核心代码为

publicvoiddataGridBind()

{

SqlConnectionconn=DB.createCon();

SqlCommandcmd=newSqlCommand();

cmd.CommandText="select*fromGS_TB_works";

cmd.Connection=conn;

SqlDataAdaptersda=newSqlDataAdapter();

sda.SelectCommand=cmd;

DataSetds=newDataSet();

sda.Fill(ds,"GS_TB_works");

PagedDataSourcepds=newPagedDataSource();

pds.AllowPaging=true;

pds.PageSize=5;

pds.DataSource=ds.Tables["GS_TB_works"].DefaultView;

this.DataList1.DataSource=pds;

this.DataList1.DataBind();

cmd.CommandText="selectcount(*)fromGS_TB_works";

4.管理员登录页面login.asp:

页面采用表单设计,用来让管理员输入账号和密码的并检查账号和密码与数据库里面管理员信息表admin的信息是否一致,如果正确则跳转到留言板管理页面adminlyb.aspx,否则转到返回到login.asp,继续输入用户名的账号和密码。

其主要核心代码为

protectedvoidlbtnDelete_Command(objectsender,CommandEventArgse)

{

intuserID=Int32.Parse(e.CommandArgument.ToString());

SqlCommandcmd=newSqlCommand();

cmd.Connection=DB.createCon();

cmd.CommandText="deletefromguesttestwhereID="+userID;

if(cmd.ExecuteNonQuery()>0)

{

Response.Write("");

}

else

{

Response.Write("");

}

4.2数据库详细设计

本课程设计共设计了5张表

4.2.1管理员登陆的详细设计

表4.2.1为管理员登录表的详细设计

4.2.2用户的详细设计

表4.2.2为用户登录和留言表的详细设计

4.2.3回复用户的详细设计

表4.2.3为用户回复表的详细设计

4.2.4登陆界面的详细设计

表4.2.4为登陆用户表的详细设计

第五章系统的运行和测试

5.1系统的开发环境

·系统:

MicrosoftWindows7

·编程环境:

MicrosoftVisualStudio2010

·ASP.NET版本:

ASP.NET2.0

·开发语言:

C#

·数据库:

SQLSever2008

5.2在登陆页面输入账号和密码

5.3进入留言板呢,查看留言信息

5.4发布留言信息并查看是否成功

5.5管理员登陆

5.6管理员删除留言

 

第六章系统实例的选择和分析

测试是为了发现程序中的错误而执行那个程序的过程。

好的测试方案是尽可能发现尚未发现的错误的测试方案。

本节将要介绍各个功能的测试用例及预期结果。

身份验证与角色判断功能

·用例内容如下,普通用户信息见表6.1,管理员用户信息见表6.2

表6.1普通用户信息测试用例

普通用户

用户名

付大伟

密码

fudawei

表6.2普通用户信息测试用例

管理员

用户名

admin

密码

admin

·测试步骤

1.以这些实例信息注册各个角色的用户。

2.以不同身份登录系统进行操作,如用户留言,回复留言,删除留言,管理员后台管理等操作。

3.观察系统运行状态。

·预期结果

系统向不同角色的用户实现不同的操作选项,并且不同角色只能访问权限范围内的页面。

·系统的安全性分析

本课题采用了ASP.NET2.0中新增功能身份认证系统,利用此功能可以快色建立用户管理子系统,功能十分完善,保证的系统的安全性能。

本课题利用ASP.NET2.0提供的控件以及后台强大功能类,完成了成员管理。

角色管理等功能。

·系统稳定性能分析

由于系统在设计时采取现设用户错误输入原则(包括对输入的完整性和合法性的检查等),因此这在很大程度上保证可系统的稳定性。

在经过大量,多类型复杂组合反复测试后,系统始终运行稳定,说明系统的稳定性具有一定的可信度。

第七章总结

在本次课程设计和论文写作中,最感谢的是我的同学和老师。

因为有了他们的支持,我才能坚持写完。

尤其是董启明老师和段珺玮老师(给了我许多技术指导,多次提出一些建设性的建议和创想,并提出我编程中常犯的错误,这让我进步神速)还有我们宿舍的兄弟,在课程设计期间对我的支持和写论文时对我的帮助!

这一段时间的努力,最后的结果固重要,但更重要的是它让自己了解了设计的一般过程。

在做一个项目的时候,首先是进行需求分析,既各种功能需求以及系统结构都要在需求分析中做出来。

接下来做的就是逻辑结构设计,通过逻辑结构设计出数据库。

然后就是详细设计,通过需求分析中对各种功能的描述,利用自己所学的ASP.NET知识编写出相应的功能模块界面,这是个比较繁琐的阶段,需要大量的编写和修改各部分代码,以确保系统整体的可运行性。

最后就到了验收成果的阶段,通过系统的运行测试,了解系统的一些问题和不足,并做出一定的修改,最终得到了现在的成果。

最后,还要感谢所有帮助过我的人,谢谢你们!

 

附录:

源代码

publicpartialclassDefault4:

System.Web.UI.Page

{

stringcurPage;

protectedvoidPage_Load(objectsender,EventArgse)

{

if(!

IsPostBack)

{

this.lblPageCur.Text="1";

dataGridBind();

}

}

publicvoiddataGridBind()

{

curPage=this.lblPageCur.Text;

SqlConnectionconn=DB.createCon();

SqlCommandcmd=newSqlCommand();

cmd.CommandText="select*fromguesttestorderbypostTimedesc";

cmd.Connection=conn;

SqlDataAdaptersda=newSqlDataAdapter();

sda.SelectCommand=cmd;

DataSetds=newDataSet();

sda.Fill(ds,"guesttest");

PagedDataSourcepds=newPagedDataSource();

pds.AllowPaging=true;

pds.PageSize=5;

pds.DataSource=ds.Tables["guesttest"].DefaultView;

pds.CurrentPageIndex=Convert.ToInt32(curPage)-1;

this.lblPageTotal.Text=pds.PageCount.ToString();

this.Button1.Enabled=true;

this.Button2.Enabled=true;

if(curPage=="1")

{

this.Button1.Enabled=false;

}

if(curPage==pds.PageCount.ToString())

{

this.Button2.Enabled=false;

}

this.DataList1.DataSource=pds;

this.DataList1.DataBind();

cmd.CommandText="selectcount(*)fromguesttest";

this.lblMesTotal.Text=Convert.ToString(cmd.ExecuteScalar());

if(!

IsPostBack)

{

inta=pds.PageCount;

for(inti=1;i<=a;i++)

{

this.DropDownList1.Items.Add(i.ToString());

}

}

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

this.lblPageCur.Text=Convert.ToString(Convert.ToInt32(this.lblPageCur.Text)-1);

dataGridBind();

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

this.lblPageCur.Text=Convert.ToString(Convert.ToInt32(this.lblPageCur.Text)+1);

dataGridBind();

}

protectedvoidButton3_Click(objectsender,EventArgse)

{

this.lblPageCur.Text="1";

dataGridBind();

}

protectedvoidButton4_Click(objectsender,EventArgse)

{

this.lblPageCur.Text=this.lblPageTotal.Text;

dataGridBind();

}

protectedvoidButton5_Click(objectsender,EventArgse)

{

this.lblPageCur.Text=this.DropDownList1.SelectedValue;

dataGridBind();

}

protectedvoidButton6_Click(objectsender,EventArgse)

{

stringusern

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1