基于Web的个人博客的设计与实现.docx
《基于Web的个人博客的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Web的个人博客的设计与实现.docx(38页珍藏版)》请在冰豆网上搜索。
![基于Web的个人博客的设计与实现.docx](https://file1.bdocx.com/fileroot1/2023-1/14/e27ca7bb-4d89-4505-a9f3-42a2e030bb69/e27ca7bb-4d89-4505-a9f3-42a2e030bb691.gif)
基于Web的个人博客的设计与实现
西南科技大学自学考试
学生毕业(设计)
题目博客系统实现
二级学院 信息工程学院
专 业 信息管理与服务
年级103级2班
班级09级网络5班
学 号 ************
姓 名 许天祥
指导教师 孙仕云
职称讲师
2012年3月13日
博客系统的实现
【摘要】博客是“一种表达个人思想、网络链接、内容,按照时间顺序排列,并且不断更新的出版方式”。
简单的说博客是一类人,这类人习惯于在网上写日记。
博客它通常是由简短且经常更新的帖子所构成,这些张贴的文章都按照年份和日期倒序排列。
Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人构想到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。
本博客与网上的其他博客一样,实现了一般博客所具有的功能,能够进行文章,图片的发布以及进行博客系统中的各个部分的管理、后台的管理等等,浏览者可以进行浏览和留言等等。
本博客采用PHP实现以上功能,用MySQL建立数据库,以Web网页的形式呈现,用“Wamp5Ver2.0”实现浏览各项功能。
【关键词】博客,博文,相册,JavaScript,MySQL数据库
Therealizationoftheblogsystem
【Abstract】Theblogisanexpressionofpersonalthoughts,Weblinks,arrangedinchronologicalorder,andconstantlyupdatedpublishing.Thesimpleblogisaclassofpeople,thesepeopleareaccustomedtointheonlinediary.
Blogitisusuallybriefandfrequentlyupdatedpostscomposition,thesearticlesarepostedinreverseorderbyyearanddate.ThecontentsandpurposeoftheBlogareverydifferent,andhyperlinksfromothersitesandcommentsaboutsomeone'sidea,todiaries,photos,poetry,prose,andevensciencefictionpublishedorposted.
Thisblogandotherblogsonthegeneralblog,tocarryarticles,Picturesrelease,andthebloginvariouspartsofthemanagement,thebackgroundofthemanagement,theviewercannavigateandmessageandsoon.
ThisblogusingPHPtoachievetheabovefunctions,establishedwithMySQLdatabase,theformofaWebpageshowing,use"Wamp5Ver2.0"browsethevariousfunctions.
【Keywords】Blog,blog,photoalbums,JavaScript,MySQLdatabase
第1章绪论
博客通常被称为“网络日志”简称为“网志”。
博客是继EMAILE、BBS、IM之后出现的第四种全新的网络交流方式。
博客系统不仅仅是一种单向的发布系统,它有着极其出色的交流功能。
在以往的几种网络交流方式中,BBS过于公共化。
而EMAILE和即时通信工具IM则有很明显的私人性质,博客系统的出现则将公共性和私人性很好的结合起来。
博客是一个正处于快速发展和快速演变中的互联网新应用,它就是一个网页,通常由简短且经常更新的帖子构成,这些帖子一般是按照年份和日期倒序排列的。
它并不等同于“网络日志”。
作为网络日志是带有很明显的私人性质的,博客则是私人性和公共性的有效结合,它绝不仅仅是纯粹个人思想的表达和日常琐事的记录,它提供的内容可以用来进行交流和为他人提供帮助,是可以包容整个互联网的,具有极高的共享精神和价值。
简言之,博客就是以网络作为载体,简易迅速便捷地发布自己的心得,即时有效轻松的与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。
博客系统可以充分展示每个用户的内心世界、工作感受、技术资料等方面的资讯。
博客是个独立站点任何人都可以方便的来使用,就像每个人拥有自己的笔记本开始书写一样简单。
博客的出现代替了以前的个人网站,任何人不需要懂得网页设计的制作技术,就可以在互联网上表达自己的观点,展示自己的风采,记录自己的生活琐事或是工作经验,让自己得到更多人的关注。
1.1博客的作用
(1)促进学习:
写blog可以促进学习,想写文章出来,自然不能是泛泛的了解就可以的,要理解了才能写的出来。
这就促进了对某些领域的不断学习和思考。
(2)记录收获:
blog中,常常是记录下来的都是瞬间的灵感,对于事物的感悟,经过多日的思考和实践的结果,对于某个问题的解决方案等等,这些都是财富,要记录下来。
(3)反映成长:
写blog,可以反映出人的思考过程,而不仅仅是思考结果。
对于一个问题或是领域,从不了解到了解,从了解到熟悉,从熟悉到精通。
这记录了一个人思考和解决问题的成长过程。
很久之后,看到自己之前的文章,将会觉得自己进步了。
(4)结交朋友:
写了blog,自然会有许多志趣相同的朋友来阅读,这可以认识许多朋友。
大家有共同的兴趣爱好,自然谈得来。
(5)共享知识:
blog给大家看,大家的博客也给自己看。
这个问题我解决了,那个问题他解决了。
大家互通有无,建立起一个社群。
(6)交流看法:
回复的人对博客的观点或赞同,或反对,大家一起讨论,听听别人的思想,可以促进双方的共同进步。
(7)包装自己:
看到一篇篇用心写出的文章,自然是对自己知识技能的最好宣传。
(8)练习文笔:
写blog,得考虑这篇文章是否拿得出手吧,全是不通的语句怎么好意思给人看,这是锻炼语句的好机会。
1.2研究博客的背景与必要性
现在越来越多的人都拥有了自己的私人博客,而且很多公司,单位也都有自己的博客,在这些博客中每个都有自己独立的特点,都有自己的风格,为自身树立了一个与众不同的形象,博客也变得越来越普遍,它逐渐成为一个随时可以记录自己以及身边发生的一切的地方,在这里可以发表自己的观点,谈自己的想法,也可以和别人交流,学习到更多东西,研究博客具有很大的价值:
(1)博客是继Email、BBS、ICQ之后出现的第四种网络交流方式。
(2)博客是网络时代的个人“读者文摘”。
(3)博客是以超级链接为武器的网络日记。
(4)博客是信息时代的麦哲伦。
(5)博客代表着新的生活方式和新的工作方式,更代表着新的学习方式。
通过博客,让自己学到很多,让别人学到更多。
(6)博客代表着“新闻媒体3.0版”:
旧媒体(oldmedia)→新媒体(newmedia)→自媒体(wemedia)。
总之,博客是一个正处于快速发展和快速演变中的互联网新应用。
在《市场术语》中对博客的定义为:
一种表达个人思想和网络链接,内容按照时间顺序排列,并且不断更新的出版方式。
Pyra创始人EvanWilliams认为博客概念主要体现在三个方面:
频繁更新(Frequency)、简洁明了(Brevity)和个性化(Personality)。
佩姬?
努南的解释是:
博客是每周7天,每天24时运转的言论网站,这种网站以其率真、野性、无保留、富于思想而奇怪的方式提供无拘无束的言论。
其他说法还有:
博客是一个“快捷易用的知识管理系统”(DylanTweney),博客是新型的“协同媒体”,博客是“不停息的网上旅程”,是“个人网上出版物(社区)”,是“网络中的信息雷达系统”,是“人工搜索引擎”,是“专家过滤器”,是“自组织网络生态”,是“草根记者”。
第2章关键技术简介
2.1相关术语
2.1.1站点
所谓站点,就是将网页文件和素材文件,有条理地放置站点文件夹里,这些文件与文件夹就构成了网站的实质内容。
站点文件夹里除了网页文件还有素材文件,所谓素材就是网页中所用到的图像、声音、视频等,这些内容是以单独文件的形式存在。
2.1.2超链接
我们在浏览网页时,当鼠标指针指向某段文本或是某个图像,鼠标指针变成小手状,单击鼠标可以打开其他的网页或是跳转到其他的网站,这就是超链接。
采用超链接技术可以将不同的网站、网站中的不同网页、网页中的不同位置彼此串在一起,实现相互间的跳转,方便信息的浏览和查找。
人们通过超链接可以很方便很迅速地访问分布于全球计算机上的海量资源,实现在互联网中的漫游。
超链接能使Web服务存在广泛和持久的生命力,超链接可以说是Web的灵魂。
2.1.3URL
URL(UniformResourceLocator的缩写),统一资源定位器。
互联网中某种信息资源以某种方式存储在网络中的某处,必须用一个惟一的URL来进行标识,这样才能方便查找。
对于Web来说,可以简单把URL理解为网址。
每个Web网页都有自己的网址,在浏览器地址栏里输入网页的URL,就可以访问这个网页。
例如,
2.2Dreamweaver8.0简介
Dreamweaver是创建和管理网页的专业化可视编辑器。
使用Dreamweaver可以轻松创建跨平台、跨浏览器的页面。
Macromedia的RoundtripHTML技术允许用户随意导入HTML文档而无需重新设置代码格式。
Dreamweaver可以为用户做到:
使用动态HTML功能(例如具有动态效果的层和行为)而不用写一行代码。
它甚至还可以检查用户的工作成果在所有流行的平台和浏览器中可能发生的错误。
Dreamweaver还是一个可以完全自定义的应用程序。
用户可以创建自己的对象和命令修改菜单和快捷键,甚至编写JavaScript代码扩展Dreamweaver的行为和属性检查器。
至于Dreamweaver工作区是非常灵活的,因此它可以适应各种不同的工作风格和使用水平。
常用的Dreamweaver工作区组件有以下若干种:
(一)文档窗口可显示当前文档,文档的外观和浏览器中看到的非常相似。
(二)装载器中包含一些打开和关闭常用检查器和模板的按钮。
(三)对象工具栏包含创建不同类型的对象(例如图像、表格、层等)的按钮。
(四)属性检查器显示选定对象的属性。
(五)快捷菜单可以使用户对当前选择或区域快速执行某些命令。
(六)可固定的浮动工具栏允许用户将浮动窗口、检查器和工具栏组合在一个或多个选择窗口中。
2.3AdobePhotoshop简介
Photoshop是目前最流行的图形、图像编辑设计软件,在数码影像处理、图像编辑合成、广告设计、封面设计、美术绘画、网页设计等领域都被广泛地应用。
(一)文字处理更加方便
(二)增加了图层集,让图层的管理更有序。
(三)新增图像功能:
图像的剪切和剪裁更加方便。
(四)将所有工具的选项板改进为工具选项栏放置在工作区顶部,方便选项参数的设置。
(五)为了更方便地用路径绘画,改进增加了几何形状工具,通过选择工具的不同工作模式,可创建路径、几何形状或几何填充区,使得矢量绘图功能得到了加强。
2.4开发语言简介
2.4.1VBScript脚本语言
一、VBScript数据类型
VBScript只有一种数据类型Variant。
Variant是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的作息。
因为Variant是VBScript中惟一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型。
最简单的Variant可以包含数字或字符串。
Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。
这就是说,如果使用看起来像是数字的数据,则VBScript会假定其为数字并以适用于数字的方式处理。
与此类似,如果使用的数据只要能是字符串,则VBScript将按字符串处理。
当然,也可以将数字包含在引号“”中使其成为字符串。
二、VBScript变量
在VBScript中只有一个基本数据类型,即Variant,因此所有变量的数据类型都是Variant。
1.声明变量
声明变量的常用方式是使用Dim语句、Public语句和Private语句在脚本中显式声明。
2.变量的命名规则
变量命名必须遵循VBScript的标准命名规则,必须遵循:
第一个字符必须是字母
不能包含嵌入的钟点
长度不能超过255个安符
在被声明的作用域内必须惟一
合法的变量名,例如Strl、MyVarl、j,不合法的变量名,例如la、abc等。
3.循环语句
循环用于重复执行一组语句。
循环可分为三类:
一类在条件变为False之前重复执行语句,一类在条件变为True之前重复执行语句,另一类按照指定的次数重复执行语句。
在VBScript中可使用下列循环语句:
1)Do...Loop:
当(或直到)条件为True时循环。
2)While...Wend:
当条件为True时循环。
3)For...Next:
指定循环次数,使用计数器重复运行语句。
4)ForEach...Next:
对于集合中的每项或数组中的每个元素,重复执行一组语句。
2.4.2JavaScript简介
JavaScript是一种基于对象(Object)和事件驱动(EventDriven)并具有安全性能的脚本语言。
使用它的目的是与HTML超文本标记语言、Java脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。
从而可以开发客户端的应用程序等。
它是通过嵌入或调入在标准的HTML语言中实现的。
它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择。
JavaScript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言。
你可以利用JavaScript轻易的做出亲切的欢迎讯息、漂亮的数字钟、有广告效果的跑马灯及简易的选举,还可以显示浏览器停留的时间。
让这些特殊效果提高网页的可观性。
2.4.3PHP和MySQL简介
PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:
HypertextPreprocessor)的缩写。
PHP是一种HTML内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。
它可以比CGI或者Perl更快速的执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。
PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
PHP最初是1994年RasmusLerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者。
后来又用C语言重新编写,包括可以访问数据库。
PHP1.0,提供了访客留言本、访客计数器等简单的功能。
PHP2.0,定名为PHP/FI(FormInterpreter),加入了对mySQL的支持,从此建立了PHP在动态网页开发上的地位。
第三版就定名为PHP3。
2000年,PHP4.0又问世了,其中增加了许多新的特性。
PHP的特性包括:
开放的源代码:
所有的PHP源代码事实上都可以得到。
PHP是免费的。
php的便捷性:
php十分便捷,学习简单
基于服务器端:
由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。
嵌入HTML:
因为PHP可以嵌入HTML语言,所以学习起来并不困难。
简单的语言:
PHP坚持脚本语言为主,与Java和C++不同。
效率高:
PHP消耗相当少的系统资源。
图像处理:
用PHP动态创建图像
面向对像:
在php4,php5中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序。
PHP相对于其他语言,编辑简单,实用性强,更适合初学者。
MySQL是目前最流行的开源SQL数据库管理系统,由MySQLAB公司开发。
在MySQL的官方网站
MySQL是一种关系数据库管理系统,其中的SQL指的是“结构化查询语言”,是用于访问数据库的最通用的标准化语言。
MySQL最初是为处理大型数据库而开发的,与已有的解决方案相比,它的速度更快。
另外,良好的安全性和方便连接使得MySQL非常适合访问因特网上的数据库。
MySQL的主要特性如下:
●能够工作在绝大部分硬件平台和操作系统上,如Linux、MacOS、Windows。
●提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl的API。
●其SQL函数是使用高度优化的类库实现的,运行很快。
●服务器可以作为独立的程序以客户/服务器方式运行,也可以作为库嵌入(链接)到其他应用程序中。
●有大量可用的共享MySQL软件,大大简化了MySQL的使用和管理。
●提供了灵活安全的权限和密码系统,当用户连接到服务器时,所有的密码传输均采用加密形式。
●具有较强的可伸缩性,能够处理大型数据库。
使用MyISAM表时,最大可达65536TB,因此MySQL数据库的最大表尺寸通常是由操作系统对文件大小的限制决定的。
●MySQL支持多种通信方式。
客户端可以使用TCP/IP协议、命名管道(Windows系统的NT系列)以及UNIX域套接字文件与MySQL服务器通信。
MySQL提供的Connector/ODBC(MyODBC接口、Connector/J接口和Connector/NET接口可以分别满足使用ODBC、JDBC连接的客户端程序以及.NET应用程序的连接需要。
所以该博客选择了PHP结合MySQL以及Dreamweaver进行制作。
2.5博客系统开发技术
2.5.1ASP.NET介绍
在世界范围内,Internet正以一种不可阻挡的势头迅速发展。
人们可以通过Internet,以不同的方式相互沟通、从Internet上获取自己想要的一切信息,为此,人们在Internet上制定了各种方法。
早期的超文本标记语言HTML,使Internet的数据描述发生了一次变革。
与以前的Web开发模型相比,ASP.NET提供了数个重要的优点:
(1)增强的性能。
ASP.NET是在服务器上运行的编译好的公共语言运行库代码。
与被解释的前辈不同,ASP.NET可利用早期绑定、实时编译、本机优化和服务。
这相当于在编写代码行之前便显著提高了性能。
世界级的工具支持。
ASP.NET框架补充了VisualStudio集成开发环境中的大量工具箱和设计器。
WYSIWYG编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。
(2)威力和灵活性。
由于ASP.NET基于公共语言运行库,因此Web应用程序开发人员可以利用整个平台的威力和灵活性。
.NET框架类库、消息处理和数据访问解决方案都可从Web无缝访问。
ASP.NET也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。
另外,公共语言运行库的交互性保证在迁移到ASP.NET时保留基于COM的开发中的现有投资。
(3)简易性。
ASP.NET使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。
例如,ASP.NET页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似VisualBasic的简单窗体处理模型中处理事件。
另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。
(4)可管理性。
ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序。
由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。
此"零本地管理"哲学也扩展到了ASP.NET框架应用程序的部署。
只需将必要的文件复制到服务器,即可将ASP.NET框架应用程序部署到服务器。
不需要重新启动服务器,即使是在部署或替换运行的编译代码时。
(5)可缩放性和可用性。
ASP.NET在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。
另外,进程受到ASP.NET运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。
(6)自定义性和扩展性。
ASP.NET随附了一个设计周到的结构,使开发人员可以在适当的级别“插入”代码。
实际上,可以用自己编写的自定义组件扩展或替换ASP.NET运行库的任何子组件。
实现自定义身份验证或状态服务一直没有变得更容易。
(7)Web2.0支持
随着第二波互联网热潮的回归,Web2.0得到越来越多人的认同,而A更是开创了许多Web应用的新模式,包括WebForm,更加简易的WebServices。
以及对Ajax的强有力的支持。
使我们在最短的时间内开发出一套完整健壮而有符合用户习惯的优秀程序成为可能。
2.5.2数据库的选择
(1)数据库介绍
Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。
它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。
Access能够存取Access/Jet、MicrosoftSQLServer、Oracle,或者任何ODBC兼容数据库内的资料。
熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。
虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。
(2)数据库用途
MicrosoftAccess在很多地方得到广泛使用