首页 > 优化技术 > 正文

何为ASP网站

ASP概述

Active Server Pages概述(1)

静止的网站内容

目前互联网上的众多网站,依旧提供“静止”(static)的主页内容。所谓“静止”,即指网站的主页内容是“固定不变”的。

当浏览器通过互联网的HTTP(超文本传输协议)协议,向网站服务器(Web Server)请求提供主页内容时,网站服务器在接收到请求后,便发送预先设计好的静止的HTML文件数据给浏览器。

一个“静止”的网站,若需更新主页内容,必须手动修改其HTML文件数据。

动态的网站内容

当在浏览器上填写表格(form)的输入数据,以提供HTTP请求时,可以在网站服务器中执行的应用程序,而不仅仅是HTML文件。网站服务器在接收到请求后,会执行应用程序,分析表格的输入数据,并将执行结果以HTML格式发送给浏览器。

ACTIVE SERVER PAGES

Active server pages(动态服务器网页,简称ASP),内置于Internet Information Server(IIS)中,提供一个服务器端(server-side)的脚本环境,允许你创建和执行动态、交互式、高效的网站服务器应用程序。

你无需担心浏览器是否能执行你设计的Active Server Pages,你的网站服务器会自动将Active Server Pages的程序代码,解释为标准HTML格式的主页内容,在发送到用户端的浏览器上显示。用户端只需使用常规可执行HTML码的浏览器,即可浏览Active Server Pages所设计的主页内容。

Active Server Pages的特点包括:

一:无需编译:易于生成,无需编译或链接即可执行。

二:使用常规文本编辑器,如Windows的记事本,即可设计。

三:与浏览器无关(Browser Independence):用户端只需使用常规的可执行HTML码的浏览器,即可浏览Active Server Pages所设计的主页内容,

Script语言(Vbscript、Jscript)在站点服务器(Server端)执行,用户无需执行这些Script语言。

四:面向对象(Object_Orient)。

五:可通过ActiveX Server components(ActiveX服务器组件)来扩展功能。

ActiveX Server component可以使用Visual Basic、Java、Visual C++、COBOL等语言来实现。

六:Active Server Pages与任何ActiveX scripting语言兼容。除了可以使用VBscript或JScript语言来设计,还可以通过Plug-in的方式,使用第三方提供的其他如REXX、perl、Tcl等scripting语言。script引擎是处理script的COM(组件对象模型)对象。

七:Active Server Pages的源程序代码,不会传到用户的浏览器,因此可以保护辛苦编写的源程序不会泄露。传到用户浏览器的是Active Server Pages执行结果的常规HTML码。

八:使用服务器端script生成客户端script,你可以使用ASP程序代码,在站点服务器执行script语言(VBscript或 Jscript),来生成或更改在客户端执行的script语言。

Active Server Pages概述(2)

ASP对象

Active Server Pages提供五个内置的“对象”(object),你可以直接调用:

一:Request:获取用户信息。

二:Response:向用户发送信息。

三:Server:提供访问服务器的方法(methods)和属性(properties)的功能。

四:Application:一个应用程序,可以在多个主页之间保留和使用一些共同的信息。

五:Session:一个用户,可以在多个主页之间保留和使用一些共同的信息。

在多个主页之间共享信息

ASP开发的应用程序,可以在多个主页之间保留和使用一些共同的信息,ASP提供两种适用范围,如下:

一:Application:Application的所有信息,在一个应用程序,多个主页之间,

可以让所有用户共同使用。

二:Session:Session的所有信息,仅适用于一个用户。

Active Server Pages概述(3)

.asp文件

Active Server Pages(ASP)制作成.ASP扩展名的文件,一个.asp文件是一个文本文件,包括:

1.HTML标记(tags)

2.VBscript或Jscript语言的程序代码

3.ASP语法

ASP语法

ASP不是一个script语言,而是提供一个可以集成script语言(VBscript或 Jscript)到HTML主页的环境。

HTML标记(tags)使用“<...>”将HTML程序代码包含起来,以与常规文本区分开来;而ASP使用“<%...%>”将ASP的script程序代码包含起来。

示例:asp1.asp

显示当前的日期时间

例如站点服务器asp1.asp文件:

当前时间是:<%=now%>

在用户端显示:

当前时间是:1998/5/17 3:11:20

让我们再看一个例子。

示例:asp2.asp

循环重复

这个ASP示例,在用户端浏览器中,浏览执行的结果如下,显示五个重复的句子,字体越来越大。

站点服务器asp2.asp文件的ASP源代码如下:

<%for i= 1 to 5%>

<font size=<%= i%>

color=#0000ff>快速掌握Internet技术

<%next%>

Active Server Pages的源代码,不会传到用户的浏览器,可以保护你编写的源程序不会泄露。因此,在用户端观看到的是常规的HTML码,你的站点服务器会自动将Active Server pages的程序代码,解释为标准的HTML格式的主页内容,如下:

快速掌握Internet技术

快速掌握Internet技术

快速掌握Internet技术

快速掌握Internet技术

迅速精通网络技术

传输字符至客户端浏览器

Response.write函数,是普遍应用于将字符传输至浏览器的方法。其语法如下:

Response.write字符

以下示例向用户致意:

<%

Response.write"欢迎光临"

%>

亦可用以下方式:

<%...%>

欢迎光临

<%...%>

跳转至指定URL地址

通过Response.redirect函数,可以跳转至指定的URL地址。其语法如下:

Response.redirect URL

例如,自动跳转至首页:

<%

Response.Redirect"homepage.asp"

%>

需注意,若此.asp主页的内容已传输给用户,在使用Response.redirect时,将出现错误!

动态服务器页面简介(4)

ASP脚本语法

采用VBscript或Jscript的ASP脚本语法

ASP可与任何ActiveX Scripting语言兼容。除了可用VBscript或Jscript语言进行设计,还可以通过插件的方式,使用第三方提供的其他如REXX,Perl, Tcl等脚本语言。

标签

ASP默认的脚本语言为vbscript,若要指定某段ASP程序代码使用的脚本语言,可以使用"...

"进行设定,例如ASP程序代码使用Jscript语言:

function函数1()

{

Response.write"呼叫我了";

}

通过"<% language=...%>"指定某一主页的脚本语言进行设定,语法如下:

<% language= VBscript%>

注意:和LANGUAGE之间一定要有空格。

一个主页使用多种语言

你可以在一个主页中使用VBscript和Jscript语言。方法如下:

一:使用多个"..."进行设定。

二:使用多个"#include"的语法。

#INCLUDE包含其他文件

你可以在ASP程序代码中插入另一个"被包含"的文件,执行到此时,先执行"被包含"文件,再继续执行下去。语法如下:

其中virtual代表虚拟的文件地址,FILE代表绝对的文件地址,如下:

被包含的#include文件,也可包含其他的"被包含"文件。

不能使用ASP程序代码来设定"被包含"的#INCLUDE文件。如下的#INCLUDE文件将无法正确执行:

<%name=(test&".inc"%>

<!--#include file=""-->

INCLUDE不能置于<%...%>当中。如下的#INCLUDE文件将无法正确执行:

<%

for i=1 to n

...

next

%>

将#include置于<%...%>外即可。如下的#include文件可正确执行:

<%

for i=1 to n

...

%>

<%next%>

动态服务器页面简介(5)

表格的处理

表格(form)

将输入的数据传输至服务器的方式,是使用HTML标记...的表格,在用户端浏览器输入数据,点击"submit"按钮后,将输入的数据传输至服务器进行处理。表格的语法如下:

·action:处理输入的数据的站点服务器程序的url地址。

·method:输入的数据传输至服务器的方式,如下:

get:将输入的数据附加在action设定的url地址后面,传输至服务器

post:按照http post传输数据的方式,将输入的数据传输至服务器

·name:设定form的名称

·onreset:点击"reset"按钮时执行所设定的子程序event

·onsubmit:点击"submit"按钮时执行的子程序event

·target:指定输入数据结果所显示的窗口名称

ASP获取表格(form)输入数据的方法

由表格的method可知,用户浏览器可以用以下两种方法传输数据

1:get:用户端将数据附加到url后,格式为"?字段1=输入数据1&字段2=输入数据2&...",再将它传输至服务器。例如ACTION设为,字段Name的输入数据为jack,字段age的输入数据为15,则使用的get方法,传输给站点服务器的数据为。

2:post:用户端利用http信息数据字段传输数据。

ASP获取表格(form)输入数据的方法,是使用Active Server Pages一个内置的"对象"(object)---request,根据get,post方法而异:

get:使用"输入数据=Request.querystring("字段名"),将附加于url后的数据取出,以获取此字段的输入数据。

post:使用"输入数据=Request.form("字段名"),读取HTTP信息数据字段,以获取字段的输入数据。

Request.querystring示例

示例:aspform.asp

使用Request.querystring("字段名"),将附加于url后的数据取出,例如:

点击此处,通过request.querystring获取name,age

Name:<%=request.querystring("name")%>

Age:<%=Request.querystring("age")%>

Request.querystring取出字段name的输入数据为Jack,字段Age的输入数据为15,在用户端使用浏览器,浏览执行的结果如下:

点击此处,通过request..querystring获取name,age

Name:jack

Age:15

Get示例

请看个例子。

示例:aspform.asp

这个例子的表格(form)使用Get方法,在用户端使用浏览器,浏览执行的结果如下,输入表格点击"写完了"按钮后,将显示处理的结果。

这个示例的表单(form)运用获取方法,在用户端通过浏览器,浏览执行结果如下,输入表单点击“已完成”按钮后,将呈现处理的结果。

站点服务器aspform.asp文件的程序代码如下,点击“提交”按钮后,执行站点服务器的asp1b.asp:

姓名:

特性:

戴眼镜

小腹微隆

美丽

asp1b.asp文件的ASP程序代码如下,由于表单(form)采用get方式,ASP程序代码

使用"输入数据=request.querystring("字段名"),从附加于URL后的数据中提取,

以获取此段的输入数据:

您好,您的特性是

Request.form

Request.form读取HTTP信息数据的字段,以获取使用POST方式的表单form输入数据。语法如下:

request.form(name)[(index)|.count]

· name:字段名。

· index:当同一字段输入多个值时,指针值index指定要读取同一字段的那一个值。

范围由1到request.form(name).count

· count:由request.form(name).count可知name字段输入几个值。若无此name字段,

则count=0。

例如以下的例子,其中input1为字段名,request.form("input1").count

得知input1字段输入几个值:

<%

for I= 1 to request.form("input1").count

response.write request.form("input1")(I)&"
"

next

%>

若input1有两个输入值,例如为value1和value2,则以上的例子,在浏览器上将

显示:

value1

value2

同一字段输入多个值时,若未采用指针值index指定要读取哪一个值时,将得到多个值,各个值中间以逗点分隔。

你可以使用"for each item in request.form("字段名"),反复获取此字段输入的所有多个输入值,以上的例子也可由以下的程序得到相同的结果:

<%

for each item in request.form("input1")

response.write item&"
"

next

%>

你可以使用"for each x in request.form",反复获取所有字段的输入值,例如:

<%for ecah x in request.form%>

<%request.form(<%=x%>)=<%= request.form(x)%>
%>

<% next%>

若字段input1有两个输入值,例如为value1和value2,则以上的例子,在浏览器上将

显示:

inut1=value1

input2=value2

Active Server Pages简介(6)

POST示例

让我们看一个POST的示例。

示例:aspform.asp

站点服务器aspform.asp文件的ASP程序代码如下:

姓名:

特性:

戴眼镜

小腹微隆

美丽

写完后点击“已完成"按钮时,所执行的asp1a.asp文件的ASP程序代码如下:

<%=request.form("input1")%>您好,您的特性是<%=request.form("input2")%>

若传给asp1a.asp的值,可能为:

input1=jack&input2=小腹微隆+美丽

则在用户端通过浏览器,浏览执行结果如下,输入表单点击“已完成”按钮后,将呈现处理的结果。

jack,您好,您的特性是小腹微隆,美丽

若你设定name字段名,则站点服务器将解析此字段的输入值。若你需要未经解析的输入值,只需使用"request.form",不含name字段名。例如asp1a.asp的ASP程序代码如下:

<%= request.form%>

若输入的与上面的例子相同,在用户端通过浏览器,浏览未经解析的输入值如下:

input1=jack&input2=%A4p%A8%7B%B7L%A5Y&input2=%BA%7D%ABG

Request.querystring

Request.querystring,读取HTTP信息数据字段位,以获取使用GET方式的表单form输入的数据。

输入的字段和数据将接在所设定的URL地址后面,

先加一个"?",字段和数据之间用"&"分隔之,例如:

URL地址?input1= value1&input2=value2

Request.querystring将解析出输入的数据value1,value2.

语法如下:

request.querystring(name)[(index)|.count]

· name:字段名.

· index:当同一字段输入多个值时,指针值index指定要读取同一字段的那个值。

范围由1到request.querystring(name).count.

· count:由request.querystring(name).count可得知name字段输入几个值。

若无此name字段,则count=0.

Request.querystring解析在servervariables的Query_string变量。

同一字段输入多个值时,若未采用指针值index指定要读取哪个值,则将得到多个值,各个值中间以逗点分隔。

Active Server Pages简介(7)

站点数据库访问法

站点数据库的解决方案

如何让用户从浏览器画面中,通过互联网或内部网络,查询站点数据库的数据,甚至输入,更新和删除站点服务器的数据库信息呢?

访问数据库的解决方案有如下几种:

1:CGI(Commom Gateway Interface):传统方法。

2:IDC(Internet Database connector,互联网数据库连接器)

与IIS(Internet Information Server):简易的站点数据库访问解决方案。

3:ADC(Advanced Data Connector,高级数据库连接器):在用户端的

3:ADC(高级数据连接器):在用户端的浏览器上执行数据查询动作的高频数据查询解决方案。

4:ADO(ActiveX数据对象)与ASP(Active Server Pages):全面的站点数据库访问解决方案。

Active Data Object与ASP

ActiveX Data Object

向数据库查询,可以使用ASP内置的一个Activex服务器组件——数据库访问组件,利用ActiveX Data Object(ActiveX数据对象,简称ADO)的技术,让您与Active Server pages(简称ASP)相结合,以提供访问数据库的功能。

ActiveX Data Object(数据库访问组件,简称ADO)是何物?ActiveX Data Object的技术,让您与Active Server Pages相结合,以构建提供数据库信息的主页内容,在主页画面执行结构化查询语言(Structured Query Language,简称SQL)命令,让用户在浏览器画面中输入、更新和删除站点服务器的数据库信息。

ADO使用RecordSets对象,作为数据的主要接口。

ADO可使用Vbscript、JavaScript语言来控制数据库的访问,与查询结果的输出显示画面。

ADO可连接多种的数据库,包括SQL Server、Oracle、Informix等支持ODBC的数据库。

ADO执行环境

在服务器端所需的ADO执行环境如下:

1:Windows NT server。

2:安装Internet Information Server(IIS)3.0(含)以上版本。

在用户端所需的ADO执行环境,只需要一般的浏览器即可。

Active Server Pages简介(8)

数据库数据来源设置

若要访问NT站点的数据库,须在"控制台"中的"odbc"建立数据库名称(用户数据来源名称),数据库所用的驱动程序和数据库文件等。

新建数据库来源的步骤

执行"设置"的"控制台"中的"odbc",选择"用户数据来源名称",点击"添加"按钮,选定数据库所用的驱动程序,如为Access数据库,选定"Microsoft Access Driver",点击"完成"按钮。

在odbc设置中,在"数据来源名称"输入数据库名称,以便以后在程序中调用称呼,点击"选择"按钮,选择数据库文件,然后点击"确定"按钮即可。

ADO数据库设计要点

只需几个步骤,就可以应用Active Data Object(ActiveX数据对象,简称ADO)的技术,在站点服务器执行访问查询数据库的动作。

第一步:

ADO数据库设计要点第一步,就是使用"Server.createobject"建立连接的对象,并使用"Open"打开待访问查询的数据库,如下

set conn= server.createobject("adodb.connection")

conn.open"数据库名称"

数据库名称即为在"ODBC"设定的"数据来源名称"。

第二步

第二步设定SQL命令,使用"Execute"命令,即可开始执行访问查询数据库的动作。如下:

其中conn为第一步所设定的名称:

set rs= conn.execute(SQ)命令

第三步

第三步,使用如下recordsets对象的命令,显示查询的结果,其中rs为第二步所定义的名称:

.rs.fields.count:records的字段数。

.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)的值即为查询的记录。

.rs.properties.count:得到ADO的Connection或Resultset的属性总数。

.rs.properties(item).name:得到ADO的Connection或 resultset的属性名称

.rs.properties(item):得到ADO的Connection或Resultset的属性值。

最后,在显示后使用如下的命令,关闭数据库:

rs.close

conn.close

例如,将查询结果显示于一个表格的程序代码如下:

<%

rs.movetext

loop

rs.close

conn.close

%>

Active Server Pages简介(9)

查询数据

若要查询数据库的数据,则使用select的sql命令。

select的基本语法如下:

select字段名#1,字段名#2,...

from数据表名#1,数据表名#2,...

where条件表达式

order by字段名#1,字段名#2,...

.select:所接的字段名为待查询的字段,各字段名之间以逗号隔开。

.from:所接的数据表名称为待查询的数据库数据表名称,各数据表名之间以逗号隔开。

.where:所接的条件表达式为设定的查询条件表达式。

.order by:所接的字段名为排序的字段,将查询的数据加以排序。

指定多个字段时,先以字段名#1排序,若数据相同在按字段#2排序,...,各字段之间以逗号隔开。

更改数据库数据

若要更改数据库的记录,包括在数据库中增加、更新、删除记录等,则可使用insert、update、delete的sql命令

......

哪些是asp网站

以下网站是ASP网站:

微软官方网站(Microsoft.com)

知乎(Zhihu.com)早期的版本

搜狐(Sohu.com)的部分页面

腾讯旗下的部分服务网站(如腾讯新闻早期版本)等。

解释:

ASP即Active Server Pages的缩写,是一种服务器端脚本环境,可以用来创建动态交互式网页。基于ASP技术的网站,通常具有数据库支持,能够实现用户注册、登录、信息发布、后台管理等功能。一些大型的互联网公司曾经使用ASP技术来搭建自己的网站。比如微软的官方网站在早期就大量使用了ASP技术。除此之外,还有一些国内的互联网公司也采用ASP技术构建了他们的网站,如知乎早期的版本、搜狐的部分页面以及腾讯新闻的早期版本等。

ASP即Active Server Pages的简称,系一种服务器端脚本环境,适用于打造动态互动网页。采用ASP技术的网站,一般配备数据库支持,可完成用户注册、登录、信息发布、后台管理等功能。诸多大型互联网企业曾借助ASP技术搭建自家的网站,例如微软的官方网站在初期便广泛运用ASP技术。此外,我国部分互联网企业亦采纳ASP技术来构建网站,诸如知乎的早期版本、搜狐的部分页面以及腾讯新闻的早期版本等。

此类网站均借助ASP技术实现网页动态互动与数据库操作。然而,随着技术的持续进步,众多网站逐步转向更为先进的开发技术,但ASP技术仍保留或应用于部分老旧系统中。

以上所转载内容均来自于网络,不为其真实性负责,只为传播网络信息为目的,非商业用途,如有异议请及时联系btr2020@163.com,本人将予以删除。

猜你喜欢
文章评论已关闭!
picture loss