您当时的方位:主页 > 言语编程 > ASP

ASP教程3:ASP根底

2014-08-18  www.codeforacause.net
本文 ASP 篇 (1) 展现了 ASP 动态网站规划的一些最根本的办法,信任经过实践各位对 ASP 现已有了最根本的了解,本篇在答复咱们所提问题的一起,将进一步介绍 ASP 动态网站的一些根本技巧。



   自本文第一篇刊登后 , 川流不息地收到了一些朋友的来信,出乎作者的预料,其中有适当一部分是初度触摸 ASP ,因而有许多朋友都提出为安在阅读器中阅读 ASP 篇 (1) 中的典范时看到的竟然是原代码?因为遇到此问题的朋友较多,故作者在此同时答复。首要,我要再次侧重 ASP 是一套服务器端的脚本环境,当用户从阅读器向 Web 服务器恳求 .asp 文件时, ASP 脚本开端运转,然后 Web 服务器调用 ASP , ASP 全面读取恳求的文件,履行一切脚本指令,并将 Web 页传送给阅读器,这就意味着你不能简略地在现有的操作体系 ( 如 Win95 、 98) 下,用阅读器中的 " 翻开 " 指令来阅读 .asp 文件;其次,运转 .asp 文件需求服务器端的支撑,现在除了 WindowsNT 下的 Microsoft Internet Information Server 支撑 Active Server 技能外, Active Server 还可用于 MS Windows NT Workstation 和 MS Windows 95/98 中的 Personal Web Server 的构件,因而不管你装置的是 NT 仍是 WIN95/98 ,都有必要在原体系上装置支撑 ASP 的服务器端环境,才能使你的机器得以运转 .asp 文件。因为现在绝大多数朋友装置的是 Win95 或是 98 ,因而作者就在这儿侧重介绍如安在 Win95/98 下运转和阅读 .asp 文件。因为 MSPersonal Web Server 支撑通用网关接口 (CGI) 运用程序、 Internet 数据库接口 (IDC) 运用程序和 IIS 运用程序接口 (ISAPI) 运用程序,而且支撑运转和开发 ASP 运用程序,所以使得 Win95 及其往后操作渠道具有了近似于 NT 的健全的网站运作和办理功用。你所要做的只是在现有的 Win95/98 体系上装置 MS Personal Web Server ,主张装置最新的 4.0 版别。当装置完成后, PWS4.0 会在体系启动时主动加载。翻开 PWS ,挑选左栏中的 " 高档 " 按钮 ( 见下图 Asp2a.gif) ,点取 " 虚拟目录 " 下的 "/_private" 目录,然后点击右边的 " 修正特点 " 按钮,如图所示,在对话框中你能够修正该虚拟目录的物理途径和目录名,上图中 "/_private" 的物理途径为 "D:/Inetpub/wwwroot" ,该目录是体系默许的 WWW 发布根目录,将上一篇中的典范 test1.asp 文件复制到 "D:/Inetpub/wwwroot" 目录下。最终,你只需将该虚拟目录的拜访权限挑选为 " 履行 " ,并在阅读器的 " 地址 " 栏中输入 "http://localhost/test1.asp" 就能够运转并阅读该 ASP 程序了。
  知道了怎么运转并阅读 ASP 程序,下面咱们就持续 ASP 动态网站规划的学习。

  上一篇给咱们介绍了几个最根本的 ASP 程序,信任咱们现已对 ASP 的运用有了大致的了解,本篇将持续介绍一些用 ASP 编写的 WEB 动态功用。因为 WEB 阅读器规范的不一致然后使得怎么能够让自己制造的网站去习惯各种不同的阅读器成为了广阔网站规划者最为头疼的事,在现在的局势之下,咱们不愿也不行能去扔掉 Netscape 或 IE 中的任何一种客户群,但咱们有时候又不得不去考虑客户端阅读器的实践阅读效果,曩昔咱们常用 JavaScript 编写一段程序来区分客户端运用的不同的阅读器,那么今日就让咱们来看看怎么运用 ASP 更为快捷且精确地到达这一意图。将以下代码,剪贴到你的 Notebook 中,并保存为 browser.asp 。   < %@ LANGUAGE = VBScript
  < HTML>
  < HEAD>
     < TITLE>用ASP供给的阅读器功用组件来区分客户阅读器< /TITLE>
   < /HEAD>
   < BODY BGCOLOR="White" topmargin="10" leftmargin="10">
    < font size="4" face="Arial, Helvetica">
    < b>用ASP供给的阅读器功用组件来辨< br>别客户阅读器< /b>< /font>< br>
    < hr size="1" color="#000000">
     < !-- 界说并创立阅读器功用目标 -->
     < %


      Dim bc


      Set bc = Server.CreateObject("MSWC.BrowserType")


    
     < !-- 在表格中描绘客户阅读器的信息 -->
     < Table border=1>
       < tr>
       < td>Browser Name< /td>
       < td> < %=bc.Browser < /Td>
       < tr>
       < td>Browser Version< /td>
       < td> < %=bc.Version < /Td>
       < tr>
       < td>Major Version< /td>
       < td> < %=bc.Majorver < /Td>
       < tr>
       < td>Minor Version< /td>
       < td> < %=bc.Minorver < /Td>
       < tr>
       < td>Frame Support< /td>
       < td> < %=bc.Frames < /Td>
       < tr>
       < td>Table Support< /td>
       < td> < %=bc.Tables < /Td>
       < tr>
       < td>Cookie Support< /td>
       < td> < %=bc.Cookies < /Td>
       < tr>
       < td>Background Sound Support< /td>
       < td> < %=bc.BackgroundSounds < /Td>
       < tr>
       < td>VBScript Support< /td>
       < td> < %=bc.VBScript < /Td>
       < tr>
       < td>JavaScript Support< /td>
       < td> < %=bc.JavaScript < /Td>
     < /table>
   < /BODY>
< /HTML>

  用 http 办法阅读该文件,依据运用的阅读器的不同,你会看到相似下图 (Asp2b.gif) 的页面。在本例中咱们用到了一个 ASP 供给的 ActiveX 组件 --"Browser Capabilities" 。 ActiveX 组件作为根据 Web 的运用程序部分在 Web 服务器上运转,组件供给了运用程序的主要功用 ( 如拜访、修正数据库等 ) ,这样 WEB 规划者们就不用创立或从头创立履行这些使命的代码,然后提高了作业的功率,有关 ActiveX 组件将在往后具体评论。为了运用 ASP 区分客户阅读器,在这儿咱们运用 "Browser Capabilities" 组件创立了一个 Browser Type 目标,该目标供给带有客户端网络阅读器功用阐明的用户脚本,当阅读器连接到网络服务器上时,它会主动发送一个 UserAgentHTTP 标题,该标题是一个声明阅读器及其版别的 ASCII 字符串。此 Browser Type 目标将该标题和在 Browscap.ini 文件中的项进行比较 (Win98 、 IIS3 、 IIS4 的用户别离能够在以下目录中 "win98/system/inersrv" 、 "/winnt/system32/inetsrv/asp/cmpnts" 、 "/winnt/system32/inetsrv" 找到该文件 ) 。假如找到匹配的项,则该 Browser Type 目标将以为阅读器列表特点与 UserAgent 标题匹配。若该目标在 browscap.ini 文件中找不到与该标题匹配的项,那么将运用默许的阅读器特点。若该目标既未找到匹配项且 browscap.ini 文件中也未指定默许的阅读器设置,则它将每个特点都设为字符串 "UNKNOWN" 。咱们能够经过更新 browscap.ini 文件将特点或新的阅读器界说增加到该组件中,然后扩展 ASP 辨认的阅读器规模和精确度。下面列出了 browscap.ini 中的一部分内容 ( 不包括注释部分 ) :



[IE 4.0] ;;HTTPUserAgentHeader


browser=IE ;;指定该阅读器的称号。


Version=4.0 ;;指定该阅读器的版别号。


majorver=4 ;;指定主版别号


minorver=0 ;;指定副版别号


frames=TRUE ;;指定该阅读器是否支撑结构。


tables=TRUE ;;指定该阅读器是否支撑表格。


cookies=TRUE ;;指定该阅读器是否支撑cookies。


backgroundsounds=TRUE ;;指定该阅读器是否支撑背景音乐。


vbscript=TRUE ;;指定该阅读器是否支撑VBScript。


javascript=TRUE ;;指定该阅读器是否支撑JScript。


javaapplets=TRUE ;;指定该阅读器是否 支撑 Java程序。


ActiveXControls=TRUE ;;指定该阅读器是否支撑 ActiveX 控件。


Win16=False ;; 指定该阅读器是否支撑Win16


beta=False ;;指定该阅读器是否测试版。


cdf=True ;;指定该阅读器是否 支撑用于 Web 猜测的 Channel Definition Format。



;;ie 4.01


[Mozilla/4.0 (compatible; MSIE 4.01*; Windows 95)]


parent=IE 4.0 ;;父标签答应第二个阅读器承继第一个阅读器的界说


version=4.01


minorver=01


platform=Win98




;;Default Browser ;;指定默许的阅读器的设置


[Default Browser Capability Settings]


browser=Default


frames=FALSE


tables=TRUE


cookies=FALSE


backgroundsounds=FALSE


vbscript=FALSE


javascript=FALSE



  在上面的比如中,父标签答应第二个阅读器承继第一个阅读器的界说,以便 Microsoft Internet Explorer4.01 界说得以承继 Microsoft Internet Explorer4.0 界说悉数的特点 ( 例如, frames=TRUE 、 tables=TRUE 以及 cookies=TRUE) 。并经过增加 platform=Win98 行来指定渠道,用 version=4.01 重写版别信息。



  在从前的 browser.asp 中咱们仅仅是将客户阅读器的特点逐个罗列了出来,下面让咱们增加一些动态的效果。将以下代码剪贴到文件 browser.asp 中( 修正注 :为显现便利,一切“ < ”符号后都多加了个空格,实践运用时请注意去掉。 ):
< % if (bc.frames = TRUE) then
你的阅读器支撑结构!< br>
< % else
莫非现在你还在运用不支撑结构的阅读器???< br>
< % end if
< % if (bc.tables = TRUE) then
你的阅读器支撑表格。< br>
< % else
莫非现在你还在运用不支撑表格 的阅读器 ???< br>
< % end if
< % if (bc.BackgroundSounds = TRUE) then
有没有听到美好的 音乐???< br>
< % else
惋惜 , 您的阅读器不支撑背 景音乐。< br>
< % end if
< % if (bc.vbscript = TRUE) then
您的阅读器支撑Vbscript。< br>
< % else
您的阅读器不支撑Vbscript。< br>
< % end if
< % if (bc.javascript = TRUE) then
您的阅读器支撑 Javascript。< br>
< % else
您的阅读器不支撑 Javascript。< br>
< % end if

  在你的阅读器中改写 browser.asp ,程序将主动区分阅读器的特点并动态显现不同的信息。不难发现在整个 browser.asp 文件中几乎没有用到任何杂乱的编程,就垂手可得的到达了动态辨别客户阅读器并动态发生呼应事情的效果。事实上,这个程序的要害就在于前文说到的 ActiveX 组件 --"Browser Capabilities" ,它的效果相似于一个 Function ,只需简略地在程序中调用该组件即能到达你所期望的效果。



  经过这两篇对 ASP 的介绍,咱们现已看到编写 ASP 程序是适当轻松的,要把握 ASP ,无非便是把握 ASP 内置的五个目标,以及 ASP 供给的 ActiveX 组件的目标、办法和特点,当然厚实的脚本言语编写才能也是有必要的。在往后的课程中作者将用五到六篇的篇幅侧重介绍这些内置目标和组件的效果及运用办法,敬请重视。