
一,ASP原理
二,VBS
三,ASP五个对象
一,ASP原理(这里大概看看,了解了解就行,不作要求)
1. 在客户端浏览器的地址栏输入要请求的ASP文件的URL地址,按回车键发送一个ASP请求
2. 浏览器向IIS/PWS服务器发送ASP网页请求
3. IIS/PWS服务器收到请求并根据扩展名.asp识别出ASP文件
4. IIS/PWS服务器从磁盘或内存中获取相应的ASP文件
5. IIS/PWS服务器将ASP文件发送到一个类似于发动机引擎的名为asp.dll的特定文件库中
6. asp.dll引擎将ASP文件从头至尾进行解释处理,并根据ASP文件中的命令要求生成相应的动态HTML页面
7. HTML页面被送回客户端浏览器
8. 用客户端浏览器解释执行HTML网页,并将结果显示在客户端浏览器上
注意:ASP和HTML相比,多了一个解析执行的过程,这些或许很多初学者都不懂
打开普通静态网页,其实就是你问服务器要一个文件,服务器就给你一个HTML文件
然后你的浏览器把这个HTML文件显示出来给你看而ASP有一点不同,相对复杂一点,原理一样
你访问一个ASP页面,就是问服务器要相关的内容服务器发现你要的文件是ASP文件,它就解析ASP
就是服务器按照你的ASP的要求,从数据库中把数据拿出来,然后根据不同的情况处理数据,得到一个html,返回给你,下面就和静态网页一样了
ASP要做的事,就是怎么样生成html给你
目前能够解析ASP的服务器有PWS和IISPWS用于win9X,IIS用于NT系统
二,VBS(要是你不懂这个,可别说你懂ASP,重中之重呀)
为什么要说到VBS呢一些初学者可能总是搞不懂VBS和ASP的关系,这里有必要说一下
准确的来说,ASP只是一种VBS的开发规范 也就是说,我们平时所见到的所有的ASP,其实,几乎都是VBS
ASP只不过有几个对象和函数
在ASP文件里面
只不过是VBS通过这些ASP的对象和函数来对html进行控制没有ASP的对象,VBS和html根本没有什么关系
学ASP,其实就是学怎么用VBS编程,通过ASP对象来控制HTML的输出
1.数据类型(懂得定义变量就行,就算不懂,也总得知道别人的程序中,这个的意思是定义一个变量)
VBS的数据类型是所有编程语言中最简单的
大家不用理会变量定义的时候该用什么类型
定义一个变量很简单,就是Dim a,b,c
这样,就定义了a,b,c三个变量
这三个变量,你可以随便用,保存数字也行,字符串也行,甚至当作数组用都行
VBS中,变量的定义语句就是Dim,后面跟变量名
当然,你完全可以不定义就使用一个变量
也就是说,你完全可以不用dim
dim a,b,c
a=b+c
或者直接a=b+c就行了
但是我们不推荐这样,初学者可以这样用,你进步以后,你自己就会知道哪种方法最好了
定义的变量的第一个字符必须是字母。
不能包含嵌入的句点。
长度不能超过 255 个字符。
在被声明的作用域内必须唯一。这个不用说了,用多了就自然知道哪些是对的那些是错的
2.VBS的运算符(就加+减-乘*除/和字符串连接&)
不用说,所有语言的加减乘除几乎都是一样的+-*/
此外,=这个等号就是等于
>=大于或者等于
&这个很重要它就是字符串连接符在ASP中输出HTML,其实就是输出 一系列字符串
所有这个符号经常用到
比如
aa=""
bb="newlife"
cc=""
dd=aa & bb & cc那么dd就是
newlife显示红色的newlife
它把三个字符串连在一起了
3.VBS的语句(掌握if和select两个)
if ... then ... end if
这是条件语句 表示,如果一个条件成立,那么就执行这些代码
还有一个完整的语句就是
if .. then
...a
else
...b
end if如果条件成立,那么执行a语句,否则执行b语句
比如
if i=0 then
a=0
else
a=1
end if如果i等于0,那么a就等于0
否则a等于1
就这个意思,就这么简单
还有一个条件语句select case
例如
select case a
case 0
b=0
case 1
b=1
case 2
b=2
case else
b=3
end select
表示如果a是0 case 0
则b=0
最后,如果a不是0,不是1,不是2,那么b就等于3
这个语句没有if语句用的多
4,循环语句
我们常用的是for ... next
例如
for i=1 to 100
a=a+1
next
表示a自加100次1
这个对所有语言都一样,很容易理解
也就是对i从1到100取值,i每换一个值,中间的语句就执行一遍的意思
还有一个经常用的循环语句是while ... wend
例如
i=1
while i<100
a=a+1
i=i+1
wend
这个语句和上面那个的作用一样
它的意思是
只要i小于100,那么就执行一遍中间的语句
在while中,i不会自己增加
要是没有i=i+1,那么这个代码会一直循环下去
5.过程和函数
过程
sub ... (没有返回值)
...
end sub
函数
function(有返回值)
...
end function
一个过程或者函数,就是一个程序段,也就是一块程序
VBS,在ASP中用到的大概就这么多
注意:连接字符串的时候,用 &
不要用+不然有些时候会发生错误
三.ASP五大对象(一二两个是重点,必学的,否则,你不懂ASP^_^)
Response
Request
Server
Session
Application
第一个就是,输出用的
讲之前首先提醒五大对象,很多书的介绍里面,都有很多垃圾的东西
所以,我只讲常用的
然后你们回去自己看书的时候,就看我讲过的,别的不用看了真的有用的,只占所有内容的五分之一,我可不忍心你们看那些没有用的东西呀
Response两个方法最有用
response.write "newlife"
response.end
第一个语句,就是输出newlife 其实就是生成html的时候,生成newlife这么一个字符串
ASP,主要就是为了输出html,这个是唯一的输出一句,所以. 它,是最重要的
下面的end表示停止这个ASP的运行
比如在程序里面,你发现某个地方出现错误了,你可以用这个方法停止ASP执行
第二个request
这个有很多集合什么的,不用管
request("")就是用来或许浏览器传递过来的数据
不管你是QS还是Form还是cookies
别的不用记,用request就可以了,不用那么复杂,搞那么多乱七八糟的东西
第三个对象server
server.createobject
server.mappath
例如server.createobject("ADODB.Connection") 就是建立一个对象
server.mappath("db.mdb")就是得到db.mdb的物理路径
还有一个是取服务器变量的,名字太长,忘了,看书注意,知道有这么一回事就好,不用记每个是什么意思
session就是个人会话
它可以使得你的数据信息在不同的ASP之间传递
它有一个方法session.abandon
就是取消(从服务器内存)删除所有session变量
application
这个是全局变量,所有用户都可以读写的
application.lock锁定app,不给别的人修改app
然后只有你可以自己改app
application.unlock解锁,这样别人才能lock,才能改app
注意:app=application
结束
总结:
其实,只要你懂任意一门编程语言,看起这份教程来,是非常非常简单的,要是你懂B语言,那么几乎不用看,ASP就算入门.
最后我建议大家:看书的时候,只需要认真看我提到的要点,别的可以一笔带过,甚至不看.
我这两年里学ASP的经验:两分看书,三分实践,五分看例程
(多谢netwjx补充以下内容)
附:
function [funname]()
.....语句
if 某种特殊情况下 then
..退出函数前的一些收尾工作
exit function
end if
.....语句
end function
在sub里面类似
sub [subname]()....end sub和
function [funname]()....end function
不同在于function可以返回数据
vbs中比较SB的地方 调用function如果加了()必须指定返回值保存在哪里 或者使用call,例如
dim a
a=funname(参数1,参数2) 'funname()函数有返回值
如果不想要返回值
call funname(....)
如果不是上面的格式调用 也可以
funname 参数1,参数2 '注意格式
如果是这样
funname(参数1,参数2)
就会出错-_-b(真有点...)
