个人博客网站的设计与实现_第1页
个人博客网站的设计与实现_第2页
个人博客网站的设计与实现_第3页
个人博客网站的设计与实现_第4页
个人博客网站的设计与实现_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

江苏信息职业技术学院毕业论文题目:基于ASP.NET的个人博客网站设计与实现系别:物联网工程系专业:软件技术学号:1003293226姓名:杨杰指导老师:何易2012年12月28日前言进入二十一世纪,以Internet为核心的现代网络积水和通信技术已经得到了飞速的发

展和广泛的应用,各种网络交流互动工具也应运而生。其中以论坛、博客、社区、空间最为

受广大网民朋友的欢迎,

也是目前为止发展的比较成熟的信息交流工具。

随着网络技术的日

渐成熟,

互联网已成为日常生活工作中必不可少的工具,

网络博客在近几年更是成为各类网

民不可或缺的展示自我表现自我的强大工具,

其强大的功能良好的互动性在很大程度上满足

了广大网民的需求。

博客,是一近几年来兴起的外来网络词汇blog是其英文原型,又译为网络日志、部落

格或部落阁等。一个典型的博客结合了文字、图像、其他博客或网站的链接、及其它与主题

相关的媒体。能够让读者以互动的方式留下意见,是许多博客的重要要素。大部分的博客以

文字为主,还有一些博客则专注在艺术、摄影、视频、音乐、播客等各种主题,是社会媒体

网络的一部分。博客有着极其出色的交流功能。在以往的几种网络交流方式中,BBS过于公共化,而Email和即时通信工具IM有很明显的私人性质,blog的出现则将公共性和私人性

很好的结合起来。

通过blog认识朋友可方便的扩大你的交际范围。

每个人都是与众不同的,

如何将自己的个性展示出来?没关系,blog提供了非常方便实用的个性化功能。本次毕业

设计的主要研究就是个人博客网站系统的设计与实现本博客旨在让更多的朋友可以联系到我,看到我的情况,通过相册,留言板等模块可以适时的了解到我的情况,最重要的是,通过这个博客系统,我们大家又多了一个交流的平台,不至于总是电话,QQ,短信,甚至有时候不好意思说出口的话,通过留言板默默地让我知道呢摘要博客近两年来在国内的发展非常快速,它可作为使用者个人或工作当中的文章、连结、照片的分享平台,逐渐成为以内容为主的新兴网路媒介,并延伸至行销、商业推广等主流应用,越来越多的人建立了自己的博客网站来展示自己想展示的信息。本博客系统设计目的旨在建立一个以ASP.NET与SQL2005数据库为工具,功能简单、结构灵活而且轻量、精致的个人博客系统网站。网络日志管理为本系统的主要应用目标,同时能够满足用户对相册,图片,留言,个人信息等信息的管理和显示,以及设置博客的背景音乐等功能。本设计以MicrosoftVisualStudio2005为开发环境,采用当前比较流行的C#编程语言进行编码,数据库采用的是SQL2005数据库。关键字:A;C#;个人博客;数据库;SQL2005AbstractBlogthepasttwoyearsdevelopingveryfastinChina,itcanbeusedaspersonalorworkamongtheusersofarticles,links,photosharingplatformisbecominganemergingnetworkofcontent-basedmedia,andextendstomarketing,businesspromotion,etc.mainstream,moreandmorepeoplesetuptheirownblogsitetoshowtheywanttodisplayinformation.ThisblogisdesignedtoestablishasystemtoASP.NETandSQL2005databaseasatoolfunctionissimple,flexibleandlightweightstructure,systemdelicatepersonalblogsite.Web-basedlogmanagementsystem'smainapplicationgoal,whileabletomeettheusersalbums,pictures,messages,personalinformationsuchasinformationmanagementanddisplay,andsetthebackgroundmusicfeaturessuchasblog.ThedesignfortheMicrosoftVisualStudio2005developmentenvironment,theuseofcurrentpopularprogramminglanguagesC#code,thedatabaseusestheSQL2005database.Keywords:Asp.Net,C#;Database;SQL2005目录前言…………………………1摘要………………………...2Abstract……………………3目录………………………..41系统概述 61.1研究背景 61.2研究现状 61.3论文的内容 71.4课题的研究意义 82系统开发环境 92.1ASP.NET概述 92.2动态网站技术介绍 102.3数据库技术 102.4ADO.NET连接数据库 113需求分析 123.1可行性分析 123.1.1技术可行性 123.1.2经济可行性 123.1.3操作可行性 133.2功能需求 133.3性能需求 133.4系统用例 144系统概要设计 154.1概述 154.2系统结构 154.3.数据库设计 174.3.1数据库E-R图 174.3.2数据库实体 17数据库设计表 195系统详细设计 225.1用户登录模块的实现 225.2留言板模块的实现 235.3相册信息模块的实现 255.4图片管理模块 285.5背景音乐实现 305.6日历模块实现 326总结 34致谢语 36参考文献: 37

1系统概述1.1研究背景WEBLOG是WEBLOG的缩写,中文意思是“网络文章”,简称“网志”,后来缩写为BLOG,而BLOGGER(博客)则是写BLOG的人。具体说来,博客(BLOGGER)这个概念解释为使用特定的软件,在网络上出版、发表和张贴个人文章的人。一个Blog就是一个网页,它通常是由简短且经常更新的Post所构成;这些张贴的文章都按照年份和日期排列。Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人、构想的新闻到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。许多Blogs是个人心中所想之事情的发表,其它Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。Blog好象对网络传达的实时讯息。撰写这些Weblog或Blog的人就叫做Blogger或Blogwriter。在网络上发表Blog的构想使于1998年,但到了2000年才真正开始流行。起初,Bloggers将其每天浏览网站的心得和意见记录下来,并予以公开,来给其它人参考和遵循。但随着Blogging快速扩张,它的目的与最初已相去甚远。目前网络上数以千计的Bloggers发表和张贴Blog的目的有很大的差异。不过,由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,因为它也逐渐被应用在企业内部网络(Intranet)。1.2研究现状博客最初的名称是Weblog,Weblog就是在网络上发布和阅读的流水记录,通常称为“网络日志”,简称为“网志”。博客概念解释为网络出版、发表和张贴文章,是个急速成长的网络活动,现在甚至出现了一个用来指称这种网络出版和发表文章的专有名词——Blog。它是继Email、BBS、即时通信之后出现的第四种网络交流方式,是网络时代的个人“读者文摘”,是以超级链接为武器的网络日记,代表着新的生活方式和新的工作方式,更代表着新的学习方式。一个Blog其实就是一个网页,它通常是由简短且经常更新的帖子所构成,这些张贴的文章都按照年份和日期倒序排列。Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人构想到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。作为网络日记是带有很明显的私人性质的,而Blog则是私人性和公共性的有效结合,它绝不仅仅是纯粹个人思想的表达和日常琐事的记录,它所提供的内容可以用来进行交流和为他人提供帮助,是可以包容整个互联网的,具有极高的共享精神和价值。博客在中国到了2000年才开始真正流行;2000年博客开始进入中国,并迅速发展,但都业绩平平;2004年木子美事件,才让中国民众了解到了博客,并运用博客;2005年,国内各门户网站,如新浪、搜狐,原不看好博客业务,也加入博客阵营,开始进入博客春秋战国时代。起初,Bloggers将其每天浏览网站的心得和意见记录下来,并予以公开,来给其他人参考和遵循。但随着Blogging快速扩张,它的目的与最初已相去甚远。目前网络上数以千计的Bloggers发表和张贴Blog的目的有很大的差异。不过,由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,因为它也逐渐被应用在企业内部网络(Intranet)。目前,BSP商家博客风起云涌,已有数十家大型博客站点。目前,国内优秀的中文博客网有:新浪博客,搜狐博客,中国博客网,腾讯博客,博客中国等。社会的进步将会是显而易见的。1.3论文的内容界面美观友好、操作简单、信息查询灵活、方便、快捷、准确。系统最大限度地实现了易安装性、易维护性和易操作性。系统运行稳定、安全可靠。访问者不注册,通过匿名方式对博客空间发表留言。博客拥有者通过前台页面进入后台管理模块后可以发布日志,管理日志,管理留言,查看留言,添加相册,删除相册,上传图片等操作。游客进入博客前台可以查看用户的博客日志,查看用户的相册图片,可以给用户留言等功能。博客拥有者登录前台可以编辑自己的用户信息,可以设置背景音乐等功能。1.4课题的研究意义从上面的背景知识我们已经了解到博客在互连网上已经具有相当的规模,可以说它已经被人们所接受,博客改变着人们的交流方式和情感体验和表达形态,改变着人们聚散的方式;它无限放大着人们对于未来信息世界的预想,它影响着整个中国互联网的发展走向,甚至可能在今后一个时期,波及或影响着现实社会的民主决策过程。无疑博客这样一种影响力颇大的媒介将有利于我们好的思想好的事物的传播,有利于社会的进步。所以我们要把这种好的影响力发挥到最大,怎样提高博客影响力必然就要求开发博客新技术来获得更多人的认可。一旦博客研究取得关键性技术的新突破,将会在网络世界掀起一股前所未有的博客浪潮,介时将会有更多的人拥有自己的博客,博客影响力也将倍增。这时通过博客一些新的科学技术将更容易推广,好的政策好的思想也会更加容易传播,如果这样相信2系统开发环境2.1ASP.NET概述ASP.Net2.0是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译。ASP.Net2.0构架是可以用Microsoft®公司最新的产品VisualS开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。这些仅是ASP.Net2.0强大化软件支持的一小部分。因为ASP.Net2.0是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.Net2.0的Web应用中。ASP.Net2.0同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.Net2.0。ASP.Net2.0使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的博客拥有者工具就可以实现。这种被称为"ZeroLocalAdministration"的哲学观念使ASP.Net2.0的基于应用的开发更加具体,和快捷。一个ASP.Net2.0的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。ASP.Net2.0已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.Net2.0应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。ASP.NET优越性主要体现在以下几个方面:(1)效率,ASP.NET是建立在.NETFramework之上的,可使用VisualBasic,C++这样的模块化程序设计语言,在第一次执行后不须重新编译就可直接运行,所以速度和效率比ASP这种只能用VBScript或JavaScript这样的非模块化语言来编写的脚本编程语言提高很多。(2)可重用性,ASP.NET不再像ASP那样将ASP代码与HTML混合在一起,而是实现代码与内容的完全分离,可重用性强。(3)代码量,ASP对所有要实现的功能通过编写代码来实现,而ASP.NET只须预先说明,就可自动实现,所以,实现同样的功能,ASP.NET要比ASP代码量小的多。2.2动态网站技术介绍由于系统的操作界面都是Web页面形式,而且需要对各种用户的具体请求进行动态处理并返回结果,这是一般静态Web页面技术所无法实现的,所以采用动态网页技术.目前动态网页技术有很多,可以说是层出不穷,比如CGI,ASP.NET,JSP,ASP,ASP.NET等.本设计采用ASP.NET技术.ASP.NET(又称ASP+)是ASP的下一代版本,它并不只是ASP4.0,它是一个用于Web开发的全新框架,其中包含了许多新的特性.ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给Web开发人员更好的灵活性,有效缩短了Web应用程序的开发周期.ASP.NET与Windows2005Server/AdvancedServer的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境.2.3数据库技术管理数据库及其对象时SQL2005的主要任务。每个数据库都是由表、触发器、存储过程等数据库对象所组成的。数据表是包含数据库中所有数据的数据库对象,设计完数据库后就可以创建数据库中用来存储数据的表了。SQL2005提供了两种创建数据库表:一种是利用表设计器创建表,一种是利用Transact-SQL语句中的creat命令创建表。创建完一个表之后,最重要的就是向表中插入数据,这是最基本的操作。假如有需要删除表的话,可以利用企业管理器删除表或者用DROPTABLE语句删除表。SQL2005数据存储过程将一些固定的数据操作集中起来处理,解决了数据库使用时系统的速度和效率问题。打开SQLServer企业管理器,选中数据库中“存储过程”文件夹,单击鼠标右键,选择“新建存储过程”命令,即可往对话框文本显示处添加命令语句。存储过程是保存起来的可以接受和返回用户提供的参数的Transact-SQL语句的集合。修改存储命令可以使用ALTERPROCEDURE语句更改存储过程。删除存储过程可以使用DROPPROCEDURE命令。由于本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持.目前主要有:SQL2005,FoxPro,Excel,Sybase,Oracle,Informix,SQLServer等,其中网络型的SQLServer,Oracle产品安全性远远高于桌面型的SQL2005,FoxPro等数据库.本系统采用的是微软公司的SQL2005.原因如下:第一,SQLServer与Windows2005Server服务器紧密集成,而Windows2005Server服务器具有很好的安全性,能够排除所有未经授权的非法用户的访问,确保了SQL2005服务器的安全性,符合系统对安全性的要求;第二,用户可以使用Web浏览器查询存储在SQL2005数据库中的数据,符合系统远程访问数据库的要求.第三,容量庞大,每个数据库中可创建多达20万个数据表,数据表中的记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求.本网站使用VS2005作为开发环境,嵌套C#语言的ASP.NET作为编程环境,SQLServer是数据库环境。2.4ADO.NET连接数据库ADO.NET为用户提供了一种全新的数据库访问机制,它使得数据库编程变得简单。ADO.NET为用户提供两种数据访问的模式。一是连接模式(connected),利用ADO技术进行数据连接编程,是一种传统的数据库访问技术。还有一种是非连接模式(disconnected),ADO.NET才具有的。提供了更大的升级性和灵活性。在非连接模式下的数据访问,应用程序从数据源中获得所需的数据,然后断开与原数据源的连接并完成数据的更新工作。ADO.NET中非连接模式的核心是DataSet类,数据集对象以XML的形势存放数据。数据集对象可以从一个数据库中获得,以可以从一个XML数据流中获取,所以用户不需要考虑数据源的位置。在ADO.NET体系结构中数据提供者对象也是一个非常重要的部分,通过它可以访问数据库,产生数据集对象,同时它还支持数据连接模式下的数据库访问。ADO.NET提供了OleDb和SQLServer两种编程接口访问数据库。如果用户使用SQLServer作为数据库,最好使用SQLServer接口,其效率比使用OleDb好。3需求分析3.1可行性分析技术可行性:计算机配置较高,有足够的空间可以安装运行平台、数据库和各类编程工具,在编程环境上提供了可靠的支持;在编程人员方面,可以运用以前所学的各种开发软件的计算机知识和管理知识,加上不断的学习,为系统的开发提供了必要的技术保障;社会可行性:目前已有很多成功开发博客系统的先例。博客系统开发和运行与国家的政策法规不存在任何冲突和抵触之处。另外,博客系统所采用的操作和工作方式符合工作人员和读者的日常习惯,而且操作方便灵活,便于学习。具有可行性;经济可行性:本系统主要采用ASP.NET开发,免费,开源,用户只需注册、登入博客系统,使用方便快捷;技术可行性技术可行性是最难决断和最关键的问题。根据客户提出的系统功能、性能及实现系统的各项约束条件,从技术的角度研究系统实现的可行性。本系统采用的是.NET家族的ASP.NET技术和ADO.NET技术。众所周知,.NET现在已经日趋成熟、稳定,被认为是计算机领域最有前途的技术之一。同时数据库采用的是SQL2005。将ASP.NET,ADO.NET以及SQL2005结合起来开发一套多用户博客系统,必定是可行并且高效的。经济可行性经济可行性研究主要进行成本效益分析,包括估计项目的开发成本,估算开发成本是否会高于项目预期的全部利润。看软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,我们开的这套系统正是考虑为用户提高工作效率,节省工作时间,方便操作与管理而设计。本系统的开发在经济上是完全可行的。开发此软件不需要大量的经费,而且是个人独立设计的,可以节省许多费用,同时也可提高个人的实际动手能力。估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用,估计新系统将获得的效益,估算开发成本是否会高于项目预期的全部经费。操作可行性由于现在的科技的飞速发展,计算机早已普及世界的方方面面,便利的科技条件,给人们带来优越的工作环境,这也使人们对工作效率及可操作性都有了更高的要求。因此,管理形式的计算机是社会发展的必然趋势,各种智能化的软件层出不穷,减少了原来人工操作的费时费力的状况,从而提高了工作效率和准确度。本系统用户平台直接面向博客拥有者和普通用户,界面简单、明了,采用可视化界面,普通用户只需用鼠标和键盘就可以查看信息;多数的数据输入与数据维护是由博客拥有者完成的。由于该系统的操作简便、易懂,对于初次使用此系统的用户,不必经过复杂的培训和学习就可以掌握系统的操作流程。由此可见,开发此软件在操作上是可行的。3.2功能需求用户管理模块:注册(游客)、登入(注册用户,系统管理员)、修改资料(博客本身)系统管理模块:用户管理(删除)文章管理模块:添加(博客本身,上传)、删除(博客本身,系统管理员)留言管理模块:发表留言(注册用户,系统管理员)、删除(博客本身,系统管理员)相册管理模块:添加相片(即上传照片,博客本身)、删除(博客本身,系统管理员)音乐管理模块:添加音乐(上传链接地址)、修改(歌词,链接,内容)、查询(内容)、删除(博客本身)3.3性能需求数据精确度:要按照严格的数据格式,否则系统不给予响应进行处理。时间特性要求:运行环境方面的链接响应时间不得超过10s,对没进行操作的用户(180s)对其访问认证失效,需要重新登入。数据管理能力要求:主要是数据库系统,其中包括有注册表(等入表)包括用户名、密码、住址和职业等常用信息。要求数据库按2%的比例自动增长。日志记录包括标题、时间、内容、作者。留言管理包括回复人、内容及时间。相册管理包括评论者、内容及时间。控制:用户在登入首页面之后,可以以两种方式进行对博客系统的访问。以用户身份(输入用户名和密码),另一种就是以游客身份浏览博客。结束之后退出访问页面也就意味着退出博客系统。3.4系统用例经过具体的需求分析,得出个人博客系统的基本功能需求。总体用例图如图3-2所示:图3-1系统总用例图4系统概要设计4.1概述本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:图4-1系统工作原理图4.2系统结构网站是基于B/S架构的网站系统,系统分为用户前台和博客拥有者后台2个大模块。前台部分的主要功能有,日志查看,相册浏览,用户留言,背景音乐,用户登录,用户信息档案等功能模块。后台部分的主要功能有,日志管理,相册管理,图片管理,留言管理等功能模块。本系统的功能模块图如图4-2。图4-2系统功能结构图有上图可以看出整个个人博客系统包括前台和后台2个功能模块。前台模块主要包括:用户登录:用户要进入博客管理必须登录,登录的时候输入自己的帐号和密码就能登录成功然后进入博客管理界面。日志查看:日志查看包括日志的列表查看和日志的内容查看,日志可以按照类别进行查看浏览。相册浏览:相册浏览功能包括首页的最新相册和相册列表,点击相册类别就能查看该类别内的所有图片信息。留言板:个人博客提供了一个留言板功能,游客来到这个博客可以发布留言信息。个人档:如果用户已经登录,可以修改自己的信息,如果用户未登录就只能浏览个人档信息。后台模块主要包括:日志管理:包括发布日志信息,修改日志信息,删除日志信息,日志类别管理等功能模块。留言管理:博客主可以回复前台游客的留言信息。相册管理:包括添加相册,修改相册信息,删除相册信息等功能模块。图片上传:用户可以选择相册然后上传图片到相册中去。音乐设置:博客主可以在后台对博客的背景音乐进行管理。4.3.数据库设计4.3.1概念模型的设计是为了将现实世界信息进行抽象,实现信息世界的建模,是进行数据库设计的有力工具。数据库概念模型设计可通过E-R图来描述现实世界的概念模型。本系统的E-R图表现了系统中各个实体之间的联系,具体的如下图4-3所示:图4-3系统E-R图4.3.2相册信息实体图如图4-4。图4-4相册信息实体图用户信息实体图如图4-5。图4-5用户信息实体图日志信息的实体图如图4-6。图4-6日志信息实体图日志类别实体图如图4-7。图4-7日志类别信息实体图留言信息实体图如图4-8。图4-8留言信息实体图图片信息实体图如图4-9。图4-9图片信息实体图4.3.3此系统需要后台数据库,下面介绍数据库中的各个表的详细信息。(Album)相册信息表如表4-1所示。表4-1相册信息表字段名数据类型长度主键描述IDint4是编号AlbumNamenvarchar50否相册名称AlbumPicnvarchar50否相册封面addTimedatetime8否添加时间(Music)背景音乐信息表如表4-2所示。表4-2背景音乐信息表字段名数据类型长度主键描述idint4是编号MusicPathint50否标题(Pic)相册内容信息表如表4-3所示。表4-3相册内容信息表字段名数据类型长度主键描述idint4是编号imagePathnvarchar50否图片地址AlbumIdint4否相册编号AlbumNamenvarchar50否相册名称dstext16否图片描述(Article)日志信息表如表4-4所示。表4-4日志信息表字段名数据类型长度主键描述idint4是编号Titlenvarchar50否日志标题Contentstext16否日志内容addtimedatetime8否发布时间(UserInfo)用户信息表如表4-5所示。表4-5用户信息表字段名数据类型长度主键描述idint4是编号Usernamenvarchar50否账号Userpwdnvarchar50否用户密码BirDaynvarchar50否用户生日Emalnvarchar50否电子邮件httpwebnvarchar50否星座addressnvarchar50否爱好addtimedatetime8否注册时间dstext16否用户描述(userliuyanban)留言信息表如表4-6所示。表4-6留言信息表字段名数据类型长度主键描述idint4是编号Datenvarchar50否发布时间Namenvarchar50否留言姓名ReplyText16否回复内容MessageText16否留言内容(ArticleType)日志类别信息表如表4-7所示。表4-7日志类别信息表字段名数据类型长度主键描述idint4是编号Namenvarchar50否类别名称5系统详细设计5.1用户登录模块的实现用户登录实现的过程主要有几个步骤,首先对用户输入的信息进行保存然后利用ASP.NET程序从数据库中进行检索看是不是有用户输入的信息在数据库中是否存在如果存在就返回正确的结果,如果不正确就返回错误的结果。如果结果数据库中存在就显示登录成功,如果数据库不存在就显示失败请重新登录。登录页面的页面效果如下:图4-1用户登陆用户登录的主要代码如下:protectedvoidButton2_Click(objectsender,EventArgse){stringsno=TextBox1.Text.Trim();stringpass=TextBox2.Text.Trim();SqlDataReaderdr=data.GetDataReader("select*fromUserInfowheretxtUsername='"+sno+"'andtxtUserpwd='"+pass+"'");if(dr.Read()){if(string.Compare(Session["CheckCode"].ToString(),TextBox3.Text,true)!=0){Label2.Text="验证码错误。";return;}else{Session["User"]=dr["txtUsername"].ToString();Session["UserName"]=TextBox1.Text.Trim();Response.Redirect("loading.aspx");}}else{Response.Write("<scriptlanguage=javascript>alert('用户名或密码不正确,请重新输入!');</script>");}}5.2留言板模块的实现网站提供了一个供用户交流的留言板,用户可以给网站提供一些意见。博客拥有者在后台管理,查看这些留言信息。留言的页面效果如下:图4-2用户留言留言的主要代码如下:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){rptMR.DataSource=data.GetDataReader("select*fromMessage");rptMR.DataBind();}}protectedvoidbtSubmit_Click(objectsender,EventArgse){stringsql="insertinto[Message](Name,Message)values('"+tbName.Text+"','"+TextBox1.Text+"')";data.RunSql(sql);Alert.AlertAndRedirect("感谢您的留言","Message.aspx");}第二部分就是对留言进行管理,博客拥有者可以在后台查看删除留言等操作。管理留言的运行效果图如下:图4-3管理留言5.3相册信息模块的实现相册模块包括对相册信息的展示,博客拥有者添加相册信息,博客拥有者管理相册信息等功能模块。相册展示列表的实现效果如下:图4-4相册信息列表主要的代码如下:privatevoidGetListPage(){try{DataSetds=newDataSet();ds=data.GetDs("select*fromAlbum","Album");PagedDataSourceobjPds=newPagedDataSource();objPds.DataSource=ds.Tables[0].DefaultView;objPds.AllowPaging=true;objPds.PageSize=6;intCurPage;if(Request.QueryString["Page"]!=null)CurPage=Convert.ToInt32(Request.QueryString["Page"]);elseCurPage=1;objPds.CurrentPageIndex=Cur1;lblCurrentPage.Text=CurPage.ToString();lblSumPage.Text=objPds.PageCount.ToString();if(!objPds.IsFirstPage){this.hyfirst.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+1;lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(Cur1);}if(!objPds.IsLastPage){hylastpage.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+objPds.PageCount;lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(CurPage+1);}DataList3.DataSource=objPds;DataList3.DataBind();}catch{}}博客拥有者对相册信息的添加功能模块实现了在后台对相册信息的添加,包括相册的名称,相册图片等信息。添加相册信息实现的效果如下:图4-5添加相册信息主要代码如下:protectedvoidButton1_Click(objectsender,EventArgse){stringres;uploadup=newupload();res=up.Up(file1,"../UpLoadImage/");this.Label1.Visible=true;this.Label1.Text=up.Resup[Convert.ToInt32(res)];this.pic.Text=up.s;Image1.ImageUrl="../UpLoadImage/"+pic.Text;}protectedvoidbtnAdd_Click(objectsender,EventArgse){stringAlbumName=this.txtAlbumName.Text;stringAlbumPic=pic.Text;data.RunSql("insertintoAlbum(AlbumName,AlbumPic)values('"+AlbumName+"','"+AlbumPic+"')");Alert.AlertAndRedirect("添加成功","MangerAlbum.aspx");}图片上传我们采用一个图片上传类对图片上传进行操作首先获取上传图片的路径信息,然后我们对图片采用日期加时间进行重命名,以免图片名称重复无法实现上传,然后用Server.MapPath方法获取图片要存放的文件夹路径,把图片上传到文件夹中去,然后把图片的相对路经信息保存到数据库中。5.4图片管理模块图片管理模块主要包括前台图片信息的展示,后台对图片信息的添加和管理以及上传图片等功能模块。图片展示效果图如下:图4-7图片信息展示主要实现代码如下:privatevoidGetListPage(){try{DataSetds=newDataSet();ds=data.GetDs("select*fromPic","Pic");PagedDataSourceobjPds=newPagedDataSource();objPds.DataSource=ds.Tables[0].DefaultView;objPds.AllowPaging=true;objPds.PageSize=6;intCurPage;if(Request.QueryString["Page"]!=null)CurPage=Convert.ToInt32(Request.QueryString["Page"]);elseCurPage=1;objPds.CurrentPageIndex=Cur1;lblCurrentPage.Text=CurPage.ToString();if(!objPds.IsFirstPage){this.hyfirst.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+1;lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(Cur1);}if(!objPds.IsLastPage){hylastpage.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+objPds.PageCount;lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+"?Page="+Convert.ToString(CurPage+1);}DataList3.DataSource=objPds;DataList3.DataBind();}catch{}}后台对图片信息进行添加管理以及上传图片等功能模块的操作。上传图片界面运行效果如下:图4-8上传图片主要实现代码如下:protectedvoidButton1_Click(objectsender,EventArgse){stringres;uploadup=newupload();res=up.Up(file1,"../UpLoadImage/");this.Label1.Visible=true;this.Label1.Text=up.Resup[Convert.ToInt32(res)];this.pic.Text=up.s;Image1.ImageUrl="../UpLoadImage/"+pic.Text;}protectedvoidbtnAdd_Click(objectsender,EventArgse){stringimagePath=pic.Text;intAlbumId=int.Parse(DropDownList1.SelectedValue);stringAlbumName=DropDownList1.SelectedItem.Text;stringds=this.txtds.Text;data.RunSql("insertintoPic(imagePath,AlbumId,AlbumName,ds)values('"+imagePath+"',"+AlbumId+",'"+AlbumName+"','"+ds+"')");Alert.AlertAndRedirect("添加成功继续上传","UpLoadPic.aspx");}5.5背景音乐实现背景音乐管理包括2个功能模块一个是后台添加背景音乐一个是前台读取背景音乐并进行播放的功能。博客主进入后台点击背景音乐设置然后选择一个背景音乐,点击上传然后保存到数据库中这样就成功设置了背景音乐。背景音乐设置效果图如下:图4-9背景音乐设置主要实现代码如下:protectedvoidButton3_Click(objectsender,EventArgse){stringres;uploadup=newupload();res=up.Up(file1,"../UserMusic/");this.Label1.Visible=true;this.Label1.Text=up.Resup[Convert.ToInt32(res)];this.pic.Text=up.s;}protectedvoidButton4_Click(objectsender,EventArgse){stringsql="updateMusicsetMusicPath='"+pic.Text+"'";data.RunSql(sql);Alert.AlertAndRedirect("上传背景音乐成功","SetMusic.aspx");}背景音乐数据库中已经存在了背景音乐的路径和音乐名称,前台登录后就能对背景音乐进行播放,我们采用微软自带的播放器进行加载背景音乐。背景音乐的关键代码如下:<objectid="MediaPlayer"classid="CLSID:6BF52A52-394A-11d3-B153-00C04Fwidth="260"><paramname="AutoStart"value="-1"><paramname="Balance"value="0"><paramname="enabled"value="-1"><paramname="EnableContextMenu"value="-1"><paramname="url"value="<%=MusicPath%>"><paramname="PlayCount"value="1"><paramname="rate"value="1"><paramname="currentPosition"value="0"><paramname="currentMarker"value="0"><paramname="defaultFrame"value=""><paramname="invokeURLs"value="0"><paramname="baseURL"value=""><paramname="stretchToFit"value="0"><paramname="volume"value="50"><paramname="mute"value="0"><paramname="uiMode"value="mini"><paramname="windowlessVideo"value="0"><paramname="fullScreen"value="0"><paramname="enableErrorDialogs"value="-1"><paramname="SAMIStyle"value=""><paramname="SAMILang"value=""><paramname="SAMIFilename"value=""><!--是否自动播放--><!--调整左右声道平衡,同上面旧播放器代码--><!--播放器是否可人为控制--><!--是否启用上下文菜单--><!--播放的文件地址--><!--播放次数控制,为整数--><!--播放速率控制,1为正常,允许小数,1.0-2.0--><!--控件设置:当前位置--><!--控件设置:当前标记--><!--显示默认框架--><!--脚本命令设置:是否调用URL--><!--脚本命令设置:被调用的URL--><!--是否按比例伸展--><!--默认声音大小0%-100%,50则为50%--><!--是否静音--><!--播放器显示模式:Full显示全部;mini最简化;None不显示播放控制,只显示视频窗口;invisible全部不显示--><!--如果是0可以允许全屏,否则只能在窗口中查看--><!--开始播放是否自动全屏--><!--是否启用错误提示报告--><!--SAMI样式--><!--SAMI语言--><!--字幕ID--></object>5.6日历模块实现对于博客的文章我们添加了一个日历模块,用户可以直接点击日历模块上的日期就能查询到当天发布的所有日志信息。点击了日历上的日期然后把选择的日期传值到另外的文章页面,进行检索,把检索到的日志信息显示到页面中。日历效果图如下:图4-10日历效果主要实现代码如下:protectedvoidCalendar1_SelectionChanged(objectsender,EventArgse){Response.Redirect("CalendarArticleList.aspx?addtime="+Calendar1.SelectedDate.ToShortDateString());}DataSetds=newDataSet();stringsql="select*fromArticlewhereAddtime='"+Request.QueryString["addtime"].ToString()+"'";ds=data.GetDs(sql,"Article");6总结(一)本文的研究结论及展望1.本文研究了基于ASP.NET的个人博客网站设计与实现,在文章开端首先对个人博客网站研究背景和研究目的作了简单的介绍,包括个人博客网站的发展和前景,之后着眼于国内外个人博客网站研究现状的综述,引申出本系统研究的主要内容。(1)通过对asp。Net、SQl2005数据库和B/S架构的简介,从硬件和软件两反面说明了基于ASP.NET的个人博客网站设计与实现的可行性,本文结论及研究成果如下:(2)实现了ASP.NET与SQl2005相结合构建的人博客网站设计通过本次基于ASP.NET的个人博客网站设计与实现的研究与实现,我感触到学习一门新技术,最重要的是实践,只有多动手才能尽快掌握它,一个系统的开发,经验是最重要的,经验不足,就难免

温馨提示

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

评论

0/150

提交评论