【返回】由于采用了B/S模式,使得整个系统大在的减少了工作量。图显示了B/S模式图5 B/S模式原理图的工作原理。在前端采用IE、Netscape等的浏览器将用户提交的操作信息向Web服务器发出HTTP请求,Web服务器通过ASP和一些中间组件访问后台数据库,并将操作结果以HTML页面的形式返回给前端浏览器。 利用ASP进行动态数据查询为了将从数据库中获得的数据显示在客户端浏览器中,需要在ASP文件中加入Table对象。Table对象可以用来显示从Server端数据库中通过SQL查询得到的记录。使用Dreamweaver等可视化工具可以方便地对*.ASP文件进行用户界面的设计。包括添加Table对象、动态GIF文件等。以下是本网页中的一段查询代码:<%word=request(trim("Keyword"))set records=("")if request("select2")="精确" thenif request("select1")="科" thensql="select * from kebiao where keID ='"&word&"' or chinesename='"&word&"' or latinname='"&word&"'"elseif request("select1")="属" thensql="select * from shubiao where shuID ='"&word&"' or chinesename='"&word&"' or latinname='"&word&"'"elseif request("select1")="种" thensql="select * from zhongbiao where zhongID ='"&word&"' or chinesename='"&word&"' or latinname='"&word&"'"elseif request("select1")="标本" thensql="select * from specimenbiao where biaoID ='"&word&"' or chinesename='"&word&"' or latinname='"&word&"'"end ifif <> 0 "数据库操作失败:"& ifelseif request("select2")="模糊" thenif request("select1")="科" thensql="select * from kebiao where keID like '%"&word&"%' or chinesename like '%"&word&"%' or latinname like '%"&word&"%'"elseif request("select1")="属" thensql="select * from shubiao where shuID like '%"&word&"%' or chinesename like '%"&word&"%' or latinname like '%"&word&"%'"elseif request("select1")="种" thensql="select * from zhongbiao where zhongID like '%"&word&"%' or chinesename like '%"&word&"%' or latinname like '%"&word&"%'"elseif request("select1")="标本" thensql="select * from specimenbiao where biaoID like '%"&word&"%' or chinesename like '%"&word&"%' or latinname like '%"&word&"%'"end ifif <> 0 "数据库操作失败:"& ifend sql,connectstr,1,3%>当Web Server处理完用户的HTTP请求后,将结果发送至浏览器上,用户就可以看到结果。 ASP访问数据库 ASP内置对象和组件ASP提供了功能强大的六个内置对象和五个内置组件内置对象:(1)Request(请求):从前端用户取得信息(2)Response(响应):将信息送给前端用户(3)Server(服务器):提供Web服务器工具(4)Session(会话):储存在一次会话内的用户信息,仅被该用户访问(5)Application(应用):管理所有的会话信息,供所有用户共享(6)ObjectContext(对象上下文):配合Transaction服务器进行分布式事务处理前三个很常用,Request和Response是用来实现web Server与浏览器交互。Request的一个重要方法是ForM(),其作用是提取浏览器的用户输入信息。如下面的语句可以取得用户填在文本框里面的内容:Request.Form(“nane”)显然,这比CCI等方法所需要的复杂编程简单多了。而输出要用到Response的一个重要方法Write,如:“ our message”该语句向浏览器输出了一条消息。内置组件:(1)数据库存取组件:ASP提供ADO来存取具有ODBC标准的数据库(2)广告轮显组件:用来维护、构建Internet广告(3)浏览器兼容组件:将浏览器的功能数据提供给服务器,以便送出适合于各种浏览器的Web页面(4)文件存取组件:提供文件读写的工具(5)文件超链接组件:提供对Web页面的管理 ASP访问数据库工作原理访问Web数据库的技术有以下几种方式:公共网关接口CGI(Common Gateway Interface)、Internet Server 应用程序编程接口ISAPI(Internet Server Application Programming Interface)、Java、Plug-in(插件)和ASP技术。这些技术都是为了克服HTML静态页面发展起来的。ASP是一个基于Web服务器的脚本开发环境,在ASP平台上可开发和运行动态的、交互的、高性能的Web服务器应用程序。图6 ASP访问数据库原理图图说明了ASP访问数据库工作原理。ASP程序在Web服务器端工作,当前端用户请求一个ASP主页时,Web服务器响应HTTP请求并调用ASP引擎执行该文件并解释执行其中的脚本,若脚本中有访问数据库请求,立刻通过ODBC或ILE DB与相应的后台数据库相连,同数据库访问组件ADO完成操作,最后,ASP根据访问数据库的结果生成HTML语言的主页返回给前端用户,用户看到的只是HTML网页,而看不到ASP程序代码,增强了保密性。 ASP连接数据库的方法ASP提供两种访问数据库的方法:在第一种方法中每次访问数据库都要与数据库连接一次,一旦与数据库建立连接语句就可以对数据进行操作;当对数据的操作完成,所有相关的对象都被关闭。与数据库相连的另一种方法是当用户的任务完成后连接才被关闭,这是由Global.asp文件所控制。每个基于ASP的internet应用可以有一个存放在应用根目录中的文件,该文件有四个事件:Applicattion-start,Senssion-start, Applicattion-End和Session-end用户与数据库的连接是在Session-start事件中,用Session-end事件关闭连接[1]。在本网页中用如下代码来实现ASP与数据库的连接:<%dim connectstron error resume nextSet connectstr = ("") "driver={SQL Server};server=localhost;uid=jsj2000;database=Biaobenku;pwd=jsj2000"if <> 0 "数据库操作失败:"& if%>5网页的界面设计由于越来越多的企业开始建立自己的网站,网站除了具有传播信息的功能外,还往往代表企业的形象。网站建设商业化和广告化的趋势,对网页设计的艺术性提出了更高的要求。虽然HTML语言提供了对常用Windows标准控件的支持,但是,由于Windows标准控件的形状和颜色十分单一,网页的视觉效果可能会很差。例如:列表框和下拉列表框只能呈现凹陷边框,而且下拉列表的箭头的颜色不能改变,滚动条只能出现在窗口的下边和右边,当网页分成多个帧的时候,滚动条就不可避免的出现在网页的中间,破坏网页的整体性。若在网页的设计中主动配合Windows标准控件的形状和颜色,网页的创作空间就会受到限制。因此,有必要实现网页中的自定义控件,以满足网页设计艺术化的要求。网页界面构成要素与传统媒体不同,网页除了文字和图像以外,还包含声音、视频和动画等新兴多媒体元素,更借助由代码语言编程所实现的各种交互式效果,增加了网页界面的生动性和复杂性,也使得网页设计者需要考虑更多页面元素的排布、优化。一般来说,网页的界面主