版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、绪 论网吧称之为吧,最好配备一些其它的服务项目,一方面增加收入,最重要的还可以让顾客以网把吧为家,那是所有网吧老板求之不得的.这些服务可以包括提供有偿打印、刻录服务,销售咖啡、饮料、便餐等.在注重网吧的硬件服务的同时,还要加强网吧的软件服务,例如为来网吧的上网的客户提供留言板服务,方便客户在网吧上网的同时能够提供意见和投诉,使网吧的管理人员能够快速的了解到客户在网吧上网时的需要和要求,并能够通过客户所发布的留言,及时的解决网吧所出现的问题. 因此,开发一个网吧留言板系统是很有必要的,也很具有现实意义。第一章 概述1.1网吧留言系统简介此系统是为网吧客户设计的网吧留言系统, 提供个网吧客户于网吧
2、管理人员沟通与交流的一个平台,解决网吧客户在网吧上网的过程中所遇到的问题. 此系统主要功能说明如下:1,登陆用户可以留言进行投诉;2,管理员可以对留言进行回复;3,用户可以把投诉内容设置为保密,那么只有管理员才可以查看,普通会员不能浏览!4,管理员可以设置页面显示风格5,后台可以设置公告!管理员可进行用户管理,设置版主。批量删除用户留言。6,管理员可以备份、恢复、压缩数据库。7,显示系统空间占用情况。例如程序文件占用空间、上传文件占用空间、系统图片占用空间等。8,管理员可以设置系统参数。如:被过滤词语后的用户是否被禁止留言、是否经过审核后才能显示留言、未注册用户是否可以允许查看留言内容、设置禁
3、止指定的IP用户留言、设置自动过滤词语、设置编辑器使用方案等等。1.2 可行性分析可行性分析是软件生存周期的第一阶段。在较高层上以抽象的方式进行系统分析和设计的过程。本文从目的要求和技术要求等方面来研究系统的可行性。1.2.1 目的要求用户登录后可以在自己的权限内操作。能够查看权限内的信息,并能做出相应处理。不同用户进行不同操作,授予不同的管理权限。运行和后台数据的安全性高,不允许无关人员随意修改、删除、添加信息,保证各种信息的规范管理和安全管理。1.2.2 技术可行性分析针对系统要求对系统开发所应用的技术,在Windows 2000 IIS(internet information serv
4、er)支持下的ASP技术具有较强的功能,能提供可视化Web页面,数据网上共享查询。因此系统在 Windows 2000 下的 IIS 就可以运行,比较特殊的要求就是需要FSO组件支持文件上传以及后台的部分功能。运行平台:工作站 Microsoft window 98、2000、2003、XP开发平台:开发语言 ASP(Active Server Pages)开发工具 Macromedia Dreamweaver MX 2004硬件配置最低配置:P100Hz、16M内存第二章 ASP 简介2.1 ASP的出现Microsoft Active Server Pages 简称asp,是一套软件微软开
5、发的服务器端脚本环境,使用它可以创建和运行动态的,交互的web服务器应用程序。当我们在internet上浏览时,会注意到很多页面的后缀是.asp的,那就是active server pages (简称asp)。它的用处,简单的说,是对www服务器的增强,让原来的那种仅仅由浏览器从服务器取得web页面的工作方式有所改变,它可以让服务器接受来自浏览器的信息,也即使所谓的动态主页,以前的动态主页主要是cgi(common gateway information,公共网关接口)和javascript来实现。Cgi程序很复杂,需要一大堆代码,要求程序员不仅要懂得cgi的工作原理,还要是个编程高手,这对初
6、学者来说是很难入门。后来,微软又编了通用的cgi(即isapi),使用时还需调用动态链接库(dll),那就更麻烦了,因为必须具备专门知识的人才能懂的它。为了初学者很容易就入门,微软便又编写了一个更简单的idc(internet database connector),只要会写几条sql语句就可能做点数据库查询等简单工作。但由于其功能有限,人们逐渐对它不满意了。这时微软又推出了asp技术,使得动态网页的设计变得异常轻松。asp采用script语言(javascript和vbscript等)就可以轻松编写,从而大大减少了web页面设计人员重新学习的时间。Asp的出现使web页面更加多姿多彩。利用m
7、icrosoft的asp技术,将script程序代码嵌入html,可创造出动态变化的web页面。在过去,使用javascript或vbscript开发的web页面,必须由客户端支持这两种语言的浏览器执行出程序源代码的结果,而asp使我们能方便地利用所熟悉的javascript或vbscript甚至perl来开发web服务器端动态html文件。所以,不管是否支持javascript或vbscript的任何浏览器只要通过asp技术产生出来的web页面,都可以摆脱不兼容的问题。Asp的出现必定会重新席卷所有的web应用程序,预示着未来也将是script(脚本)语言的天下。22.2 ASP的特点,作用
8、和优点从字面上说,ASP包含三方面含义:1、Active:ASP使用了Microsoft的ActiveX技术。ActiveX(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。122、Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可
9、以很方便的快速上手。然而Netscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。Netscape浏览器也可以正常显示ASP页面。3、Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。这样就可以防止别人抄袭程序。由此我们可以看出,ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。ASP是基于WE
10、B的一种编程技术,可以说是CGI的一种。它可以完成以往CGI程序的所有功能,如计数器、留言簿、公告板、聊天室等等。ASP可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,ASP可以完成无比强大的功能。使用FileSystemObject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等等。有ADO(Active Database Object,动态数据库对象)的支持,ASP对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。使用CDON
11、TS(Collaboration Data Objects for NTS,NTS协作数据对象),可以发送、查看邮件,实现WEBMAIL的功能。结合WSH(Windows Scripting Host),可以实现对NT主机的管理,如NT用户管理、IIS虚拟主机设置、EXCHANGE邮箱设置等等,就像管理本地机一样方便.2.3 ASP主要技术介绍2.3.1 ASP对象Active Server Pages提供五个内置的“对象”(object),你可以直接调用:一:Request:取得用户信息。二:Response:传送信息给用户。三:Server:提供访问服务器的方法(methods)和属性(p
12、roperties)的功能。四:Applicatin:一个应用程序,可以在多个主页之间保留和使用一些共同的信息。1五:Session:一个用户,可以在多个主页之间保留和使用一些共同的信息。在多个主页之间共享信息ASP开发的应用程序,可以在多个主页之间保留和使用一些共同的信息,ASP提供两种适用范围,如下:一:Application:Application 的所有信息,在一个应用程序,多个主页之间,可以让所有的用户共同使用。二:Session:Session的所有信息,仅适用于一个用户。2.3.3 ASP文件Active Server Pages(ASP)制作成.ASP扩展名的文件,一个.asp
13、文件是一个文本文件,包括:HTML标记(tags)VBscript 或Jscript语言的程序码ASP语法ASP并不是一个script语言,而是提供一个可以集成script语言(VBscript或 Jscript)到HTML主页的环境。HTML标记(tags)使用“”将HTML程序码包含起来,以与常规的文本区分开来;而ASP使用“”将ASP的script程序码包含起来。Active Server Pages的源代码,不会传到用户的浏览器,可以保护你写的源程序不会外漏。因此,在用户端观看到的是常规的HTML码,你的站点服务器会自动将Active Server pages的 程序代码,解释为标准的
14、HTML格式的主页内容。2.3.4 ASP Script语法使用VBscript或Jscript的ASP语法ASP与任何ActiveX SCripting语言兼容。除了可使用VBscript或Jscript语言来设计,还可以通过plug-in的方式,使用由third party所提供的其他譬如REXX,Perl,Tcl等scripting语言。13标记ASP默认的script语言vbscript,若要设定某一段ASP程序代码使用的script语言,可以使用.加以设定,譬如ASP程序码使用Jscript语言:function 函数1()Response.write 叫到我了;设定某一主页的scr
15、ipt语言使用加以设定,语法如下:注意:和LANGUAGE之间一定要有空格。一个主页使用多种语言。你可以在一个主页当中使用VBscript和jscript语言。方法如下:一:使用多个.加以设定。二:使用多个#include的语法。INCLUDE包含其他文件,你可以在ASP程序码中插入另外一个被包括的文件,执行到此时,先执行被包括文件,再继续执行下去。语法如下:其中virtual代表虚拟的文件地址,FILE代表绝对的文件地址,如下:被包括的include文件,也可在包含其他的被包括文件。不能使用ASP程序码来设定被包括的#INCLUDE文件。如下的#INCLUDE文件将无法正确的执行:!-#in
16、clude file=-#INCLUDE 不能置于当中。如下的#INCLUDE文件将无法正确的执行:%for i=1 to nnext%将#include置于外即可。如下的#include文件可正确的执行:2.3.5 站点数据库访问法站点数据库的解决方案如何让用户从浏览器画面中,通过internet或intranet,查询站点数据库的数据,甚至输入,更新和删除站点服务器的数据库信息呢?访问数据库的解决方案有如下几种:1:CGI(Commom Gateway Interface):传统方式。2:IDC(Internet Database connector,Internet数据库连接器)与IIS
17、(Internet Information Server):简易的站点数据库访问解决方案。3:ADC(Advanced Data Connector,先进的数据库连接器):在用户端的浏览器上执行数据查询动作的频繁的数据查询解决方案。4:ADO(ActiveX Data Object ,Activex数据对象)与ASP(Active Server Pages):完整的站点数据库访问解决方案。Active Data Object与ASP1:ActiveX Data Object访问数据库,可采用ASP内置的一个Activex Server component-DatabaseAccess comp
18、onent(数据访问组件),使用ActiveX Data Object(ActiveX数据对象,简称ADO)的技术,让你可以与Active Server pages(简称ASP)结合,以提供访问数据库的功能。ActiveX Data Object ( 数据库访问组件,简称ADO)是什么东西呢?Active Data Object的技术,让你可以与Active Server Pages结合,以建立提供数据库信息的主页内容,在主页画面执行Structured Query Language(结构化查询语言,简称SQL)命令,让用户在浏览器画面中输入,更新和删除站点服务器的数据库信息。ADO使用Rec
19、ordSets对象,作为数据的主要接口。ADO可使用Vbscript,JavaScript语言来控制数据库的访问,与查询结果的输出显示画面。ADO可连接多种的数据库,包括SQL Server,Oracle,Informix等支持ODBC的数据库。42:ADO执行环境在服务器端所需要的ADO执行环境如下:1、windows NT server.2、安装Internet Information Server(IIS)3.0(含)以上版本.在用户端所需要的ADO执行环境,只需要一般的浏览器即可.2.3.6 数据库数据来源设定若要访问NT站点的数据库,须于控制台中的odbc建立数据库名称 (用户数据来
20、源名称),数据库所用的驱动程序和数据库文件等.新建数据库来源的步骤:执行设定的控制台中的odbc,选择用户数据来源名称,点击添加按钮,选定数据库所用的驱动程序,如为Access数据库,选定Microsoft Access Driver,点击完成按钮.在odbc设定中,在数据来源名称输入数据库名称,以便以后在程序中调用称呼,点击选定按钮,选择数据库文件,然后点击确定按钮即可. ADO数据库设计要领只要几个步骤,就可以应用 Active Data Object (ActiveX 数据对象,简称ADO)的技术,在站点服务器执行访问查询数据库的动作.第一步:ADO数据库设计要领的第一步,就是使用Ser
21、ver.createobject建立连接的对象, 并使用Open打开待访问查询的数据库,如下set conn = server.createobject(adodb.connection)conn.open 数据库名称数据库名称即为在ODBC设定的数据来源名称.第二步第二步设定SQL命令,使用Execute命令,即可开始执行访问查询数据库的动作.如下:其中conn为第一步所设定的名称:set rs = conn.execute(SQ)命令第三步第三步,使用如下recordsets对象的命令,显示查询的结果,其中rs为第二步所定义的名称:.rs.fields.count:recourds的字段数
22、.rs(i).name:第i(指针)个字段名,i由0算起到rs.fields.count-1.rs(i):读取第i(指针)个字段的记录,i由0算起到rs.fields.count-1.rs(字段名):读取指定的字段的记录.rs.eof:是(true)否(false)已指定最末笔.rs.movenext:将指针移到下一笔.rs.moveprev:将指针移到上一笔.rs.movefirst:将指针移到第一笔.rs.movelast:将指针移到最末笔.rs.getrows:将查询结果存于数组当中,如v = rs.getgows(100),再读取数组v(col,row)的值即为查询的记录.
23、perties.count:得到ADO的Connection 或Resultset的属性总数.perties(item).name:得到ADO的Connection 或 resultset的属性名称.perties(item):得到ADO的Connection 或Resultset的属性值.最后,在显示后使用如下的命令,关闭数据库:rs.closeconn.close2.3.7 查询数据若要查询数据库的数据,则使用select的sql命令.select的基本语法如下:select 字段名#1,字段名#2,.from 数据表名#1,数据表名#2,.where 条件表达式o
24、rder by 字段名#1,字段名#2,.select:所接的字段明为待查询的字段,各字段名之间以逗号隔开.from:所接的数据表名称为待查询的数据库数据表名称,各数据表名之间以逗号隔开.where:所接的条件表达式为设定的查询条件表达式.order by:所接的字段名为排序的字段,将查询的数据加以排序.指定多个字段时,先以字段名#1排序,若数据相同在按字段#2排序,.,各字段之间以逗号隔开.更改数据库数据若要更改数据库的记录,既在数据库中增加,更新,删除记录等,则可使用insert,update,delete的sql命令.2.4 ASP的Web运行机制在基于HTTP(超文本传输协议)的网络传
25、输过程中,最重要的三个实体是WEB客户机,WEB服务器和网络。其中WEB客户机和WEB服务器的信息交换是通过客户端浏览器与WEB服务器之间的通信来进行的。WEB浏览器和WEB服务器之间的通信机制如图2.1:图2.1 HTTP请求响应图用户所看到的页面是由WEB服务器将相应的数据传送给客户端的浏览器。当用户请求的是HTML文档或者图象文件时,WEB服务器直接把用户请求的文件发给客户端浏览器。当WEB服务器接受到来自客户端浏览器的.asp文件请求时,就开始运行ASP脚本。然后,WEB服务器将调用ASP解释器,全面读取请求的文件,执行所有的服务器端脚本命令后将命令结果和文本,HTML代码等一起发给浏
26、览器。浏览器对其中的HTML和客户端脚本代码进行解释后,把它们和文本,图象等无须解释的信息一起显示在页面中,供用户浏览。5ASP技术使网站开发者可以很方便地获得并影响HTTP传送的内容。利用ASP的内建对象Request和Response可以和HTTP头和HTTP主体交互,从而让使用ASP的网站开发者可以方便迅捷地创建有强大交互功能的网页。WEB服务器可以用Request对象来获取客户端浏览器提交的数据,用Response对象将数据输出到浏览器中去。如图2.2:图2.2 HTTP与伺服器数据交换图第三章 系统的开发工具和开发环境3.1 为何选用Dreamweaver作为开发工具Dreamwea
27、ver 是 Macromedia 公司的产品的另一款“所见即所得”的网页编辑工具。与 Frontpage 不同,Deamweaver 采用的是 Mac 机浮动面版的设计风格,对于初学者来说可能会感到不适应。但当你习惯了其操作方式后,就会发现 Dreamweaver 的直观性与高效性是 Frontpage 所无法比拟的。Dreamweaver 对于 DHTML 的支持特别好,可以轻而易举地做出很多眩目的页面特效。插件式的程序设计使得其功能可以无限的扩展。Dreamweaver 与 Flash、Firework 并称为 Macromedia 的网页制作三剑客,由于是同一公司的产品,因而在功能上有着
28、一个非常紧密的结合。而最新推出的 Dreamweaver UltraDev 更支持 Asp,Jsp。因此,说Dreamweaver 是高级网页制作的首选并不为过。3.2 Dreamweaver简介 Macromedia公司出品的Dreamweaver是制作动态网页的能手。Dreamweaver之所以被广大网页编辑者钟爱,很大程度上是因为它具有FrontPage所没有的功能图层(Layer)排版和基于图层的网页动画,且都不需要编程。图层的概念可以理解为Photoshop中的图层概念。通过图层,网页上的各种元素可以布置在网页的任何位置,也可以进行任何方式的重叠。然而Photoshop中的图层是静态
29、的,而Dreamweaver中的图层则还是制作网页动画的基础。而Dreamweaver的图层和时间轴就是制作网页动画的基础。配合Time1ines(时间轴)的设置,图层能够在不同时刻出现在不同位置,从而实现网页的动态效果。利用这个原理,能让一个图层从一个地方移动到另一个地方。图层的运用给了创作更大的自由度。图层可以确保各层面上的对象均是独立互不干涉的,还可以确保对象在任何位置上排列与重叠。因此,在Dreamweaver中,图层还是形成动画的基本元素,因为在网页动画中,配合时间轴进行动作的元素必须是以图层为单位的。图层的概念是动态网页(DHTML)的精髓。 DHTML实现动态的关键在于对象的移动
30、,而要移动对象,必须首先能够提取出对象。一般的对象只能摆放在网页上,没有办法引用,而图层则不然。图层可以有专门的ID号,可以被引用,可以被移动。显然DHTML中,图层成了页面排版的基本单位。这意味着,在网页上不仅对象可以随意摆放,而且各个图层上都可以建立动画,各动画互不影响。最后这些动画叠加起来,整个网页上出现的就是多彩多姿的动画。3.3 IIS服务器的安装和配置我用的是Windows XP professional版的操作系统,所以我给大家介绍一下在XP professional下面来配置IIS服务器:一、把Windows XP professionalal光盘放入光驱中。二、在“开始”“控
31、制面版”中找到“添加或删除程序”,如图3.1所示界面:图3.1 准备添加程序三、点击“添加或删除程序”,进入如图3.2所示界面图3.2 准备添加Windows组件四、点击“添加/删除Windows组件(A)”,进入如下图3.3所示界面:五、点击“下一步”,你只需等几分钟,系统就可以自动安装IIS这个组件了。六、点击“完成”,IIS这个组件就装入系统中了。七、选中第二项(Internet信息服务IIS)如下图3.4所示界面:八、运行在windows nt/2000/xp的 iis(Internet Infrmation Server)下面.iis的截图:图3.5 打开IIS选中默认站点的属性图3
32、.6 打开默认站点属性第四章 数据库设计与实现4.1 为何选用ACCESS数据库有许多的数据库可以选择,SQL SERVER、ACCESS(*.mdb)、EXCEL(*.xls)、FOXPRO(*.dbf)甚至普通的文本文件(*.txt)都可以达到存储数据的功能。那么到底选择什么数据库最合适呢?其中SQL SERVER是服务器级的,足以应付每天上万次的访问量。对于非服务器级的数据库建议使用ACCESS2000。因为:(1)只要安装了PWS或IIS4肯定有ACCESS的ODBC驱动,即你的系统肯定支持ACCESS数据库的存取。(2)ACCESS支持的SQL指令非常齐全。(3)ACCESS ODB
33、C驱动程序的效率非常高。虽然它不是服务器级的数据库,但是作为中小型企业内部网的数据库支持还是绰绰有余的。(4)ACCESS2000在OFFICE2000中就有,非常方便得到和使用。网上心理咨询系统根据实际的需要,选ACCESS作为后台数据库。4.2 ASP与ACCESS的连接ASP连接ACCESS数据库的程序是: 第五章 系统结构设计与主要代码分析5.1 主页设计系统主页采用静、动相结合的方式,即静态的主画面和动态的信息公告相结合。利用ASP与数据库结合的技术,采用交互式的动态的web画面来实现。请看系统的首页,如图5.1此页面是系统的首页。页面文件是default.asp,它的主要代码是:
34、tdfont-size:12px; 当前位置:a href=首页 >> 留言板 a href= _ % strSourceFile = Server.MapPath(siva.xml) Set objXML = Server.CreateObject(Microsoft.FreeThreadedXMLDOM) objXML.load(strSourceFile) Set objRootsite = objXML.documentElement.selectSingleNode(guestbook) 每页显示*条留言 PageSize = cin
35、t(&num&) 获取子节点数据(因为是从节点数从0开始的所最大子节点数要减1) AllNodesNum = objRootsite.childNodes.length - 1 算出总页数 PageNum = AllNodesNumPageSize + 1 PageNo = cint(Request.querystring(PageNo) 如果是每一次获得页面则定位到每一页显示最新的留言 if PageNo= or PageNo=0 then PageNo = 1 end if 获得起始节点 StarNodes = AllNodesNum - (PageNo - 1)*PageSize 获得结束节点 EndNodes = StarNodes - PageSize + 1 if EndNodes AllNodesNum then 如果超过则结束节点要减去(StarNodes-AllNodesNum)的差值否则下标会超界出错 EndNodes=EndNodes-(StarNodes-AllNodesNum) StarNodes=AllNodesNum end if if End
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论