资源描述
河北经贸大学毕业论文河北经贸大学毕业论文摄影爱好者网站开发专业名称:计算机科学与技术班 级:05级计算机1班 学生姓名: 指导老师: 完成时间: II摘 要进入21世纪之后,随着信息技术的飞速发展,尤其是人们生活水平的日渐提高,数码相机已经不再是一件奢侈品了。但是,并不是每个人都是摄影领域里的专家。然而,网络和论坛给了摄影爱好者一个很好的学习平台。本文所设计的摄影爱好者网站是一个典型为摄影爱好者提供帮助和交流的网站,其开发主要包括前台系统和后台系统两部分。前台系统是供会员或者游客访问的浏览器界面。在这里浏览者可以注册成为会员,查阅作品,查看要闻资讯,下载相关软件,参与论坛讨论,使用搜索引擎和发表留言等。后台系统主要进行会员信息的管理,要闻资讯的发布以及修改等。本网站便于向所有浏览网站的用户展示优秀的摄影作品,还可以进行在线讨论,从而使所有摄影爱好者可以分享作品和经验,并为用户提供最新的资讯以及新版软件的下载。本摄影爱好者网站基于互联网运行的B/S模式,以Windows XP+ IIS作为开发环境,采用Dreamweaver MX作为前台页面的开发工具,后台选择Access作为数据库开发工具。其主要技术创新点在于它采用了ODBC(Open Database Connectivity)技术。这种技术功能强大,使用方便,节省了大量代码的编写。另外,本网站的主要特色是页面新颖友好,内容丰富,自动发布信息,加之设计有论坛功能,尽最大努力满足了用户的需求。关键词 摄影;论坛;ASP;数据库;参数传递ABSTRACTAfter entering the 21st century, accompanied by the rapid development of information technology, in particular, with the increasing of peoples living standard, a digital camera is no longer beyond the reach of ordinary people. However, not everyone is an expert in the field of photography. The network and the forum are both very good learning platforms.This photographers web site is a typical site for photographers to provide help and the exchanges. Its development parts include: front and back-office systems. The front system is provided for members or visitors to visit the browser interface. Visitors can register to become a member, see the good works, view the news information, download software, participate the discuss, use search engines and delivered messages and so on. The back-office system is mainly made up of the management of the background information for members, the release of news information, as well as the revisions. The web site which is facilitate to all members to display photographs can also be used for online discussion, so that all photography enthusiasts can share their works, and provide up-to-date information and the latest software.This web site is based on the B / S mode . It uses the Windows XP + IIS as a development environment and uses the Dreamweaver MX as the development tools of the front page .I choose the Access as the database development tools. The main technical innovation of this point is that it uses ODBC technology, which is powerful and easy to use, saving a great deal of the preparation of the code. In addition, the main features of this website is friend, rich in content and automatic dissemination of information, and also with the design of the forum, it has met the needs of the users very well.Keywords Photography; Forum; ASP; database; parameter 河北经贸大学毕业论文目 录1 绪论11.1 系统开发背景21.1.1 什么是摄影21.1.2 因特网的产生和发展21.1.3 文化交流网站的现状31.2 课题提出的意义32 开发环境及其技术简介52.1 系统开发环境52.2 系统开发工具53 摄影爱好者网站需求分析73.1 系统可行性分析73.2 系统需求分析74 后台数据库设计94.1 数据库需求分析104.2 数据库的详细设计104.2.1 用户注册表的数据库设计104.2.2 后台管理的数据库设计114.2.3 留言板的数据库设计124.2.4 论坛系统的数据库设计124.3 实现数据库之间的联系134.4 数据库的链接155 摄影爱好者网站的详细设计175.1 网站的结构及模块设计175.2 前台客户端首页设计195.3 信息发布功能205.4 计数器功能215.5 滚动文字功能215.6 搜索引擎功能225.7 留言板的实现225.8 设为主页功能225.9 软件下载功能235.10 论坛的实现235.10.1 设置框架235.10.2 用户注册功能245.10.3 用户登录功能265.10.4 帖子列表功能285.10.5 帖子阅读功能285.10.6 会员基本信息查看界面295.10.7 会员基本信息修改界面305.10.8 会员密码修改界面305.10.9 留言发送界面305.10.10 留言查看界面315.10.11 帖子查询功能325.10.12 文章发表界面335.11 后台管理的设计345.11.1 管理员登录功能345.11.2 资讯的删除功能345.11.3 资讯的添加功能345.11.4 会员管理界面355.11.5 帖子管理界面356 系统测试366.1 模块测试366.2 集成测试376.3 确认测试37结 论38致 谢40附 录41参考文献44II河北经贸大学毕业论文摄影爱好者网站开发1 绪论随着摄影技术的不断发展,摄影已经不再只是专业摄影师的爱好了,当今越来越多的普通人迷上了摄影。人们喜欢摄影,想要把自己的所见所闻和各个时期不同的自己,用镜头记录下来。但是自学摄影并非一件容易的事,而向资深摄影师询问也并不现实,所以这让摄影爱好者头痛不已。然而随着网络的普及,网络资源的大范围共享,使摄影爱好者之间相互交流成为了可能。大家可以通过网络,同来自四面八方的摄影爱好者或者摄影方面的专家进行交流,吸收经验,改进不足。网络的信息是共享的,而又是面向大众的。在交流经验,相互学习的同时,浏览者还可以了解摄影的最新资讯,业界最新动态,数码相机的选取以及发表自己的最新作品等。这样一来,一个包含上述功能的网站就十分必要了。但设计网站并非易事,这需要充分了解网站设计的方方面面,从前台界面到后台数据库,要重点突出,有特色。具体到本网站就是一定要有摄影领域的特色。这其中最重要的一点是要把需求分析做到尽可能的完善,不要造成因为需求分析出现偏差而导致整个系统重改的局面。设计出的网站要求美观,简洁,实用性强,易于操作。所以,网站既要功能完善还要有自己的特色,要真正做到使浏览者有宾至如归的感觉,尽情享受该网站带来的乐趣和知识。在以上分析的基础上,我完成了本摄影爱好者网站的设计。本网站由前台系统和后台系统两部分构成。前台系统是供会员或游客访问的浏览器界面。在这里浏览者可以注册成为会员,查阅作品,查看要闻资讯,下载相关软件,参与论坛讨论,使用搜索引擎和发表留言等。后台系统主要是进行会员信息的管理,要闻资讯的发布以及管理等。随着计算机技术的提高和发展,对小型的网站来说,用一台机器来完成前后台任务是可行的。本网站虽然无法与功能强大的大型门户网站相媲美,但是功能齐全,方便实用,最大限度的满足了用户群的需求。1.1 系统开发背景1.1.1 什么是摄影摄影是指使用某种专门设备进行影像记录的过程,一般我们使用机械照相机或者数码相机进行摄影。有时摄影也会被称为照相,也就是通过物体所反射的光线使感光介质曝光的过程。英文摄影Photography一词源于希腊语 phos(光线)和 graphis(绘画、绘图)或 graph,两字一起的意思是“以光线绘图”,是指使用某种专门设备进行影像记录的过程。有人说过的一句精辟的语言:摄影家的能力是把日常生活中稍纵即逝的平凡事物转化为不朽的视觉图像。一般简称的摄影,即是用照相机,映像在底片,冲印底片成为单一相片,一张张作永久保存。但相片的影像是不动的、无声的,仅供人观赏其人物、意境,进而体会其涵义。今天世界上仍存留的最早的一张照片可以追溯至1827年,出自法国人约瑟夫尼埃普之手。 摄影的分类包括:记录摄影、艺术摄影、画意摄影、全息摄影等。摄影流派包括:绘画主义摄影、印象派摄影、写实摄影、自然主义摄影、纯粹派摄影、新即物主义摄影、超现实主义摄影、抽象摄影、堪的派摄影、“达达派”摄影、主观主义摄影等。1.1.2 因特网的产生和发展因特网起源于美国国防部高级研究计划管理局建立的阿帕网。网站(Website)是指在因特网上,根据一定的规则,使用HTML等工具制作的用于展示特定内容的相关网页的集合。简单地说,网站是一种通讯工具,就像布告栏一样,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。许多公司都拥有自己的网站,他们利用网站来进行宣传、产品资讯发布、招聘等等。随着网页制作技术的流行,很多个人也开始制作个人主页,这些通常是制作者用来自我介绍、展现个性的地方。也有以提供网络资讯为盈利手段的网络公司,通常这些公司的网站上提供人们生活各个方面的资讯如时事新闻、旅游、娱乐、经济等。在因特网的早期,网站还只能保存单纯的文本。经过几年的发展,当万维网出现之后,图像、声音、动画、视频,甚至3D技术开始在因特网上流行起来,网站也慢慢地发展成我们现在看到的图文并茂的样子。通过动态网页技术,用户也可以与其他用户或者网站管理者进行交流。也有一些网站提供电子邮件服务。1.1.3 文化交流网站的现状目前国内文化交流网站自身存在着一些问题,主要表现在:第一,网站在首页页面上通常放置太多内容,也存在很多广告,使整体版面过于杂乱,令浏览者反感;第二,国内网站的种类不足,有未涉及的方面。以摄影网站为例,虽不缺乏大型的门户网站,但是这些网站的官方性质太强。就这一点而言,虽然其具备所需的功能,但是指向性不强。也就是说它虽适用于所有的人,但对所有人的贡献都不大。究其原因,在于这些网站只在大的方面满足了种类的要求,但是并没有把种类细分,网站的开发并没有针对特定的用户群。也许正是由于中国文化交流网站现存的种种问题和不足,在面对外来网站的竞争时,不免产生担忧和底气不足,对未来的发展心存疑虑和困惑。但这并不能从根本上解决问题,也不是文化交流网站发展壮大的长远之计。加强对本土文化资源的整合、共享和利用是大势所趋,开发适用于各个层次的群体的网站迫在眉睫。认清形势、选择对策,为文化交流网站提供切实可行的解决方案这一命题又一次摆在人们面前。1.2 课题提出的意义本摄影爱好者网站正是基于以上的分析设计完成的。网站针对的用户群是业余的摄影爱好者。这一类用户群具有如下特点:酷爱摄影,但是自身的摄影技术有限;没有足够的经济基础购买最为精密的摄影工具;摄影的目的是为了记录自己的所见所闻,并非是制造高尚艺术品或者参加大型设计比赛。总结一句话就是,本网站的设计理念以普通老百姓的摄影爱好为依托。所以网站的设计非常朴素和实用。网站中设有论坛系统,使用户可以随意与他人沟通;网站的用户可以留言给网站管理员,分享自己发现的摄影小窍门,再经管理员发布到网上,使大家可以共享这一消息;网站信息台发布的信息每天更新;用户可以将自己的作品发到网上,供大家评论。本网站虽然比不上大型门户网站的功能齐全,但是却十分适用,功能也应有尽有,在各种类型网站中占据不可或缺的角色,也必将成为网站发展趋势的一股热潮。452 开发环境及其技术简介2.1 系统开发环境(1) 支持ASP的Web服务器:本机使用IIS5.0。(2) ASP程序的编辑工具:ASP和HTML网页都是常规的文本文件,使用Dreamweaver编辑器或Windows的记事本都可以编辑ASP程序。(3) 浏览器:用浏览器来看最后的结果。ASP并不限定浏览器的种类。对于当前的常用的浏览器,如Internet Explorer,firefox等均可以正常的浏览网页。2.2 系统开发工具(1) ASPASP是Active Server Page的缩写,意为“动态服务器页面”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的Web应用程序。(2) Access2000 Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了Microsoft Jet Database Engine和图形用户界面两项特点,是Microsoft Office的成员之一。Access能够存取Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何ODBC兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的“进阶用户”则能使用它来开发简单的应用软件。虽然它支持部分面向对象技术,但是未能成为一种完整的面向对象开发工具。(3) Microsoft Windows XP的Internet信息服务(IIS)给Windows带来Web计算的强大功能。通过IIS,您可以轻松地共享文件,并为安全发布信息,创建应用程序提供了极大的方便。IIS是创建和开发摄影爱好者网站的安全平台。含IIS的Windows XP可以满足您以下的需要: 设置个人Web服务器。 在您的组内共享信息。 访问数据库。 创建一个企业Intranet。(4) Dreamweaver简介Dreamweaver是Macromedia公司推出的一个专业可视化的HTML编辑工具,用于对Web站点、Web页和Web应用程序进行设计、编码和开发。Dreamweaver是专业的网页设计软件,它可以帮助用户快速创建自己的站点,轻松设计出精美的页面,它的最大特点是工作环境所见即所得,这个特点大大简化了网站架设与网页设计的操作流程,让网站的设计工作变得轻松方便。无论直接编写HTML代码的还是在可视化编辑环境中工作,Dreamweaver都会十分方便实用。Dreamweaver的功能强大且界面友好,使用它可制作跨平台浏览的网页。Dreamweaver所提供的可视化编辑功能,可帮助用户快速创建不需要手工编写任何代码的动态页面。此外,Dreamweaver还提供了功能全面的编码环境,其中包括代码编辑工具,以及有关层叠样式表(CSS)、JavaScript和CodeFusion标记语言(CFML)等方面的参考资料。Dreamweaver还可以使用服务器技术(如ASP.NET、ASP、JSP和PHP)生成动态的、数据库驱动的Web应用程序。3 摄影爱好者网站需求分析3.1 系统可行性分析从系统的技术可行性,经济可行性和操作可行性方面进行分析如下:技术可行性:具备用于建立系统的硬件设备、软件、开发环境等资源。系统采用微软的功能强大的开发环境以及Windows XP操作系统为工作平台,同时借助Microsoft Access 2000进行后台数据库设计。经济可行性:对于一个网站而言,网站的流量和名气越大,广告商就越愿意在上面打广告,广告费也就越高,网站收入也越高。因此广告是其主要经济来源。所以前期的设计费用是绝对有必要的。操作可行性:本网站界面美观,易于操作,只要经常上网的人就都可以操作它,基本不存在操作技术上的问题。3.2 系统需求分析在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能的过程中所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。在软件工程的历史中,很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。假如在需求分析时分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。所以说,需求分析既是一项最重要的工作,又是一项最困难的工作。我在设计此网站时,做了充足的需求分析,具体内容如下:(1) 本网站的潜在用户群是喜爱摄影的业余摄影爱好者。(2) 用户需要朴素实用的网站,不是花哨无用的网站,尤其不能只顾及商业目的而无节制的引进大量垃圾广告。可以适当的加一些与摄影有关的用材广告或是相关摄影网站的广告,但一定要控制其质量和数量。(3) 网站需要一个成熟的论坛系统,为用户提供良好的交流平台。(4) 网站信息发布要及时。(5) 网站的功能要全面,包括:信息发布,论坛,作品展示,留言板,软件下载,搜索引擎等。(6) 网站的性能要良好,要易于维护。(7) 网站对权限要有要求,不可越权操作。4 后台数据库设计数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库结构设计的好坏决定了系统的效率以及实现的结果。合理的数据库设计可以提高数据存储的效率,保证数据的完整和统一,并且有利于程序的实现。而合理的数据库设计源于对用户需求的充分了解。数据库(database)是数据管理的最新技术,具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点。所谓数据库是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户所共享。数据库的应用已经越来越广泛了,不仅大型计算机及中小型计算机,甚至微型计算机都用先进的数据库技术来保持系统数据的整体性、完整性和共享性。数据库设计(Database Design)是将业务对象转换为表和视图等数据库对象的过程。数据库设计是数据库应用系统开发过程中首要的和基本的内容。数据库是信息系统的核心和基础。它把信息系统中的大量数据按照一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获取所需的信息。一个信息系统的各个部分能否紧密地结合在一起以及如何结合,关键在数据库,因此必须对数据库进行合理设计。按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下六个阶段:(1) 需求分析;(2) 概念结构设计;(3) 逻辑结构设计;(4) 物理结构设计;(5) 数据库实施;(6) 数据库运行与维护;整个数据库的关键是表结构的设计,它独立于整个数据库的逻辑结构,能充分反映现实世界,包括实体之间的联系,能够满足用户需求,而且易于扩充和修改。4.1 数据库需求分析网站后台数据库必须实现最新资讯的信息更新,能够储存管理员的信息,会员的注册信息,各个会员发表的帖子信息以及会员之间发送的消息等。根据以上的功能需求分析,在设计数据库时应该设计如下表项:(1) 信息发布表:该表主要用于储存待发布的信息,包括新闻资讯的题目、内容等。(2) 管理员信息表:该表主要用于记录管理员的信息,包括:用户名,密码,密码取回问题,密码取回问题答案等。(3) 用户信息表:主要用于记录注册用户的信息,包括:用户名,性别,密码,密码取回问题,密码取回问题答案,邮箱地址,QQ号,身份,头像等。(4) 文章信息表:主要用于记录帖子的相关信息,包括:帖子发布时间,帖子发布者的用户名,帖子被浏览的次数,文章被跟帖的次数,被跟帖文章的编号,帖子标题,帖子内容等。(5) 消息表:主要用于存储用户收到的消息的相关信息,包括:发送消息的时间,消息发送者用户名,收件人的用户名,消息内容等。(6) 留言表:主要存储网站浏览者给网站留言的相关信息。此表与用户信息表并没有联系。它的功能是收集网友的信息。所有浏览者均可填写留言,把对网站的意见或建议发给网站管理员。其内容包括:留言者昵称,留言者联系方式,留言者邮箱,留言内容等。4.2 数据库的详细设计4.2.1 用户注册表的数据库设计用户信息表:主要用于记录注册用户的信息。(如表4-1)zhuce(Num,name,sex,mima,q,a,email,zhiwei,phone,head)表4-1 用户信息表字段名字段类型是否主键是否可为空说明Num自动编号是否编号name文本否否姓名sex文本否否性别mima文本否否密码q文本否否密码取回问题a文本否否密码取回问题答案email文本否否电子邮件地址zhiwei文本否是身份phone文本否是联系方式(QQ号)head文本否否头像4.2.2 后台管理的数据库设计管理员信息表:该表主要用于记录管理员的信息。(如表4-2)wo(Num,name,mima,q,a)表4-2 管理员信息表字段名字段类型是否主键是否可为空说明Num自动编号是否编号name文本否否姓名mima文本否否密码q文本否否密码取回问题a文本否否密码取回问题答案信息发布表:该表主要用于储存待发布的资讯信息。(如表4-3)inf(infnum,inftitle,infcontent)表4-3 信息发布表字段名字段类型是否主键是否可为空说明infnum自动编号是否信息编码inftitle文本否否信息标题infcontent备注否否信息内容4.2.3 留言板的数据库设计留言表:主要存储网站浏览者给网站留言的相关信息。(如表4-4)message(Num,name,address,tel,email,content)表4-4 留言表字段名字段类型是否主键是否可为空说明Num自动编号是否留言者编号name文本否否留言者用户名address文本否是留言者地址tel文本否是留言者联系方式email文本否是留言者邮箱content备注否否留言内容4.2.4 论坛系统的数据库设计文章信息表:主要用于记录帖子的相关信息。(如表4-5)article(articleid,articledate,articletime,articleauthor,articleaccessnumber ,articlefellownumber, articleparent,articlecontent,articletitle, articlefcontent)表4-5 文章信息表字段名字段类型是否主键是否可为空说明articleid自动编号是否文章的号码articledate日期/时间否否发表文章的日期articletime日期/时间否否发表文章的时间articleauthor文本否否发表文章的用户帐号articleaccessnumber数字否否文章被阅览的次数articlefellownumber数字否否文章被跟帖的次数articleparent数字否否被跟帖的的文章编号articlecontent备注否否文章的内容articletitle文本否否文章的标题articlefcontent备注否否跟帖文章的内容消息表:主要用于存储用户收到的消息的相关信息。(如表4-6)message(id,messagedate,messagetime,messagename,messagecontent,messagetoname)表4-6 消息表字段名字段类型是否主键是否可为空说明id自动编号是否消息的编号messagedate日期/时间否否发送消息的日期messagetime日期/时间否否发送消息的时间messagename文本否否发送人的用户名messagecontent备注否否消息内容messagetoname文本否否收件人的用户名4.3 实现数据库之间的联系表能充分反映现实世界,表之间的联系反映了现实中实体之间的联系。所以需要建立各表之间的联系,使得用户注册登录系统,会员基本信息系统和帖子发表系统相互关联起来。前台系统E-R图如图4-1所示。NmessageidmessagecontentaenamemessagenameaenamemessagetonameetaenamemessagetimeaenamemessagedateaenameNarticlearticlefellownumberarticlecontentarticlefcontentarticleparentarticleidarticledatearticletimearticletitlearticleauthorarticleaccessnumberzhuce1发送1zhiweiheadaqphoneemailsexmimanameNum编写图4-1 前台系统E-R图管理员信息表和会员信息表,信息发布表,文章信息表之间的E-R图如图4-2所示:1zhuceNzhiweiheadaqphoneemailsexmimanameNum管理1N发布infinfidinfcontentinftitleaename1Nummimaqawonamearticlearticlefellownumberarticlecontentarticlefcontentarticleparentarticleidarticledatearticletimearticletitlearticleauthorarticleaccessnumber管理N图4-2 后台系统E-R图4.4 数据库的链接本网站需要使用后台数据库发布信息和储存会员信息,并支持论坛操作,所以要设计前台页面和后台数据库的连接。这样才能实现在前台提交数据,在后台数据库中保存,达到用户和系统的动态交互的效果,充分利用ASP的动态交互特点。数据库连接实现代码为:5 摄影爱好者网站的详细设计摄影爱好者网站是由前台系统和后台系统两部分构成的。前台系统是供会员或者游客访问的浏览器界面,在这里浏览者可以注册成为会员,查阅作品,查看要闻资讯,下载相关软件,参与论坛讨论,使用搜索引擎和发表留言等。后台系统主要是进行会员信息的管理,资讯的发布和管理等。5.1 网站的结构及模块设计本网站是摄影爱好者相互交流的网站。其前台系统分为作品展示,软件下载,论坛,资讯,留言板和关于我们这六个功能模块,其中最重要的是论坛模块。以下是本网站的前台系统功能模块图。(如图5-1)展示台论坛关于我们游客登录留言板会员登录主 页软件下载资讯查看信息修改信息查看留言发送留言发表文章浏览标题注册登录发送留言浏览标题图5-1 前台系统功能模块图(1) 注册模块访问者可以通过注册成为本网站的会员,获得相应的权限。(2) 登录模块该模块用于实现会员的登录。会员登录后,系统将显示登录者的信息。(3) 软件下载模块该模块用于实现最新软件的在线下载。(4) 作品展示模块该模块用于展示图片信息。(5) 论坛模块游客和会员均可以使用论坛。但游客只有部分权限,待其注册成为会员后才拥有其他权限。会员可以搜索帖子,发表帖子,查看帖子,回复帖子,向其他会员发送消息等。(6) 资讯模块该模块用于发布最新的摄影资讯或者相机资讯。(7) 留言板模块留言板模块用于向所有浏览网站的人提供一个给本网站留言的方法。(8) 关于我们模块该模块显示本网站的一些基本信息,包括版权,设计者的信息等。网站的后台系统分为资讯管理、查看留言、会员管理、帖子管理这四个功能模块,以下是本网站的后台管理系统功能模块图。(如图5-2)添加资讯删除资讯主页资讯管理帖子管理查看留言会员管理搜索帖子删除帖子查看帖子删除会员查看会员图5-2 后台管理系统功能模块图(1) 资讯管理模块该模块用于实现网站管理员发布的最新资讯。(2) 会员管理模块该模块用于实现网站管理员对网站会员的管理。(3) 帖子管理模块该模块用于实现网站管理员对帖子的管理。(4) 查看留言模块该模块用于实现管理员查看网页浏览者的留言的功能。5.2 前台客户端首页设计根据网站的结构以及网站的功能分析,利用ASP与数据库结合的技术建立本摄影爱好者网站,采用交互式的动态Web技术来实现。网站要求页面美观,主题突出,结构鲜明。为使各页面的风格统一,设置了CSS样式。样式文件的内容见附录一。本网站的首页如图5-3所示:图5-3 网站首页5.3 信息发布功能为了实现信息的自动发布,需要利用后台数据库建立的inf表,表中包括编码、新闻题目、新闻内容三项。对于前台界面的显示,则需要利用新闻编码,进行参数传递,把新闻标题和新闻内容分别从数据库中读出来,写入一个新闻发布模版。这样此功能就实现了。功能实现的主要代码如下:sql=select infnum,inftitle,infcontent from inf set rs = conn.execute(sql) if not rs.eof and not rs.bof then do while not rs.eof response.write &rs(inftitle)& response.write rs.movenext loop end if 5.4 计数器功能计数器可以记录网站或者网页被访问的次数,并在网页上直观地显示出来,是让来访者了解该网站或者网页的人气指数最直接的方法。同时使网站主管对自己网站的访问情况有个全面的了解。如果想在网站上放一些广告的话,访问人数是在寻找广告商时最好的说词。如图5-4所示,论坛主页上有一个计数器,用来记录该论坛的访问人数。(1) 把写有0-9数字的十张图片放在counter文件夹中,文件名为0.gif,1.gif等,作为显示的计数值。(2) 新建“count.txt”文本文件,将其初值设为0,并保存。图5-4 网站计数器(3) 建立一个asp页面,取名为“counter.asp”,写入代码并保存。具体代码见附录二。(4) 在任何网页中均可显示计数器,只需在欲显示处插入代码:即可5.5 滚动文字功能在主页中可以看到状态栏中有滚动的文字:“摄影论坛当你注册后才可以发帖子,点击这里注册!”这个功能的实现使得主页的即时信息更加醒目。实现语句为:摄影论坛当你注册后才可以发帖子,点击这里注册!5.6 搜索引擎功能本网站还建立了google,百度以及雅虎三项搜索引擎功能。这一功能的实现虽然很简单,只需添加类似action= h1=zh-CN的标签即可,但是却会给用户带来极大的方便,实用性极强。5.7 留言板的实现此留言板使浏览本网站的所有人都可以向网站留言,不论他们是否会员。目的是让浏览者对本网站提意见,以期改善。该功能对安全性要求不高,所以可用Dreamweaver系统自带的功能实现。而网站管理员查看留言界面的实现也很简单,即调用数据库的数据即可。5.8 设为主页功能这一功能使得每次打开IE便是本站,加大了客流量,提高了本站的影响程度。其实现代码为:if(document.all)if(navigator.appVersion.indexOf(MSIE4.0)0)document.write(设为主页)5.9 软件下载功能网站设有软件下载功能。这一功能使用户不仅可以在本网站了解最新软件信息,还直接给用户提供了下载最新软件的方法,最大程度地方便了用户的操作。其实现方法是:(1) 将最新软件的安装包全部放到“软件”文件夹中,并对每个安装包进行压缩,如:photoshop.rar。(2) 对首页中所示的“Photoshop CS4 简体中文官方试用版下载”作超级链接到photoshop.rar即可。代码为:这样点击“Photoshop CS4 简体中文官方试用版下载”,便可出现如图5-5所示的对话框,下载功能便实现了。图5-5 软件下载功能5.10 论坛的实现5.10.1 设置框架框架的定义较为特殊,首先需确定如何分割窗口,然后建立描述窗口分割的主文件,再为每个框架建立相应的文件。我创建一个main.asp文件。窗口分为上下两个部分,以便于把会员或游客的个人信息的显示和论坛操作分开,同时可以把会员和游客的个人信息界面做到尽可能的相似,省去了同时开发两个界面的时间。此框架的定义代码见附录三。5.10.2 用户注册功能论坛系统只对已注册的会员提供最大程度的权限和服务,而游客只有阅读帖子的权限。用户注册时需要填写若干项基本信息,包括:用户名,密码,性别,电子邮件地址,身份,密码取回问题,密码取回答案,联系方式,头像等项。当注册的用户名有重复时,系统将会反馈“对不起,用户名已存在,请更改注册的用户名”的提示;两次输入的密码不相同时,系统将会反馈“两次输入的密码不一致!”的提示;用户名最多只能12位。密码长度不到6位或邮箱无效时都将导致注册无法成功。这些系统自检均是通过charu.asp文件的if条件语句实现。此功能的操作流程如图5-6所示:否是是是是否否否否注册入口必填项为空?用户名有效?Email地址有效?两次密码一致?密码长度符合?注册成功图5-6 注册流程图经过系统检测合格后,用户便注册成功。用户注册成功后便可直接登录系统。会员可以使用论坛的所有功能。注册界面如图5-7所示:图5-7 注册界面实现注册功能的主要代码如下:if not rs.eof thenresponse.write alert(对不起,用户名已存在,请更改注册的用户名!);document.location.href=zhuce.asp;elseset rs1=server.createobject(adodb.recordset)sql1=insert into zhuce(name,mima,sex,email,q,a,head,phone,zhiwei) values(& name &,& mima &,& sex &,& email &,& q &,& a &,& head &,& phone &,& zhiwei &)rs1.open sql1,conn,1,1response.write alert(注册成功,现在你可以登录网站了!);document.location.href=denglu.asp;end if5.10.3 用户登录功能首页和论坛主页中均有用户登录选项。用户只有登录后才可获得更多权限。登录中如有必填项为空,则系统提示“有未填项!”。如果所填用户名不存在,则系统系统提示“请先注册”,然后转注册界面。如果用户名和密码不匹配,则登录不成功。只有当所有项的填写均正确时,登录才成功,进入主页,且主页显示会员的登录信息。此功能的操作流程如图5-8所示:否是是否否登录必填项为空?用户名存在?密码正确?登录成功注册图5-8 登录流程图登录界面如图5-9所示:图5-9 登录界面登录功能的实现主要通过check.asp文件实现,其主要代码为:if not rs.eof thenif rs(mima) mima thenresponse.write alert(对不起,密码不正确,请重新输入);document.location.href=denglu11.asp;response.endelsesession(name)=namesession(admin_num)=rs(Num)response.redirect user.htmend ifelseresponse.write alert(对不起,你的用户名不存在,请先注册!);document.location.href=zhuce11.asp;response.endend if用户使用用户名和密码登录。当用户忘记密码时,可以点击登录界面中的“找密码吗?”选项(已在图中圈出),通过选择密码提示问题,再经过正确的回答,即可获得密码。这一功能使系统的功能更加完善,是保护用户信息的体现。密码找回功能主要实现语句为:%if not rs.eof then if rs(q)q or rs(a)a then response.write alert(对不起,回答不正确,请重新输入);document.location.href=findpsw.asp; response.end else response.writealert(您的密码为&rs(mima)&); document.location.href=denglu.asp; end ifelseresponse.write alert(对不起,你的用户名不存在,请先注册!);document.location.href=zhuce.asp;response.endend if %5.10.4 帖子列表功能帖子列表功能是把所有的帖子按每页10个显示出来。如果帖子数多于10页,则自动显示下一页按钮。此显示功能也是读取数据库的过程,其实现和网站首页的信息发布功能的实现类似,这里不再赘述。每个帖子的链接是查看与该帖子有关的详细信息,即帖子的阅读。5.10.5 帖子阅读功能用户要阅读帖子,就要有帖子主题,发帖人信息,帖子内容,跟帖内容,发表回复等显示项。我把阅读帖子,跟帖内容和帖子回复等的信息均以表格形式显示。其界面如图5-10所示:图5-10 帖子阅读界面首先借助帖子列表页面传递过来的文章编号信息,使用SQL语句查询出和该帖子有关的所有信息,包括帖子标题,发帖人姓名,跟帖信息等。之后的帖子标题显示只需用一个很简单的asp脚本即可实现:。其他的如发帖人信息和帖子内容等的信息以相同方式显示。上述SQL语句为:select * from article where articleid= & request.QueryString(id) & Order By articledate Desc对于跟帖信息,同样可以通过SQL语句查询出文章所跟帖的帖子号为现在查看的帖子号的所有跟帖文章。然后再以与帖子查看相同的方法显示跟帖内容。上述SQL语句为:select * from article where articleparent= & request.QueryString(id) & Order By articledate Desc所有的发帖者或跟帖者的姓名均是一个超链接,其链接到发帖者或跟帖者的基本信息查看页面。其主要语句为:%response.write&rs(articleauthor)& %5.10.6 会员基本信息查看界面该界面显示会员的基本信息,其内容包括用户名,性别,email,qq,身份,头像等内容。其界面如图5-11所示:图5-11 会员基本信息界面5.10.7 会员基本信息修改界面有时会
展开阅读全文