ASP说明Word格式.docx
- 文档编号:8287038
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:30
- 大小:31.93KB
ASP说明Word格式.docx
《ASP说明Word格式.docx》由会员分享,可在线阅读,更多相关《ASP说明Word格式.docx(30页珍藏版)》请在冰点文库上搜索。
(8)Minute函数:
返回0到59之间的整数值,表示一小时中的某分钟。
minute(time)。
time参数的说明和hour函数相同。
(9)Second函数:
返回0到59之间的整数值,表示一分钟中的某秒。
second(time)。
(10)Weekday函数:
返回一个星期中某天的整数。
weekday(date)。
该函数返回值为“1”到“7”,分别代表“星期日”、“星期一”……“星期六”。
比如当返回值是“4”时就表示“星期三”。
(11)WeekDayName函数:
返回一个星期中具体某天的字符串。
相对weekday函数而言即翻译出“星期几”,使用方法:
weekdayname(weekday)。
参数weekday即星期中具体某天的数值。
比如“weekdayname(weekday(date()))”就表示当前是“星期几”。
因为“date()”表示的是当前的时间,而“weekday(date())”就表示的是一星期中具体某天的整数。
当然weekdayname函数最终显示的字符串内容还与当前操作系统语系有关,比如中文操作系统将显示“星期一”这类的中文字符,而英文操作系统则显示为“Mon”(Monday简写)。
此外,在VBScript中还有一些关于时间间隔的计算函数:
(1)DateAdd函数:
返回指定时间间隔的日期、时间。
可以计算出相隔多少年、或相隔几个月、又或相隔几个小时等的新日期、时间。
dateadd(interval,number,date)。
其中参数interval表示需要添加的时间间隔单位。
其是以字符串的形式表达的,比如“yyyy”表示年,“q”表示季度,“m”表示月份,“d”表示天数,“ww”表示周数,“h”表示小时数,“n”表示分钟数,“s”表示秒数。
而参数number则表示添加的时间间隔数。
其是以数值的形式表达的,可以为负值。
参数date则要求是日期、时间的正确格式。
比如dateadd("
d"
100,"
2006-5-20"
)就表示2006年5月20号以后的100天的日期值:
2006-8-28。
再比如dateadd("
h"
-12,"
2005-5-2010:
00:
00"
)就表示2005年5月20号上午10点前的12小时的日期时间:
2005-5-1922:
00。
(2)DateDiff函数:
返回两个日期时间之间的间隔。
可计算出两个日期相隔的年代、小时数等。
datediff(interval,date1,date2)。
参数interval和dateadd函数中的interval参数内容描述相同,date1和date2参数分别就是相互比较的两个日期时间。
另外,当date1的日期时间值大于date2时,将显示为负值。
比如DateDiff("
yyyy"
"
1982-7-18"
date)表示某人的出生到现在已经多少年了。
又比如DateDiff("
2062-7-18"
)则计算了80年过了多少天:
29220。
2,字符串处理函数
在脚本的功能处理中,通常需要对一些字符串进行一些修饰性处理。
比如过滤掉字符串中的敏感字眼以符合最终显示的要求;
又比如一段较长的字符串,需要提取开头的几个字符时。
(1)Asc函数:
返回字符串中第一个字母对应的ANSI字符代码。
asc(string)。
其中string参数表示字符串。
(2)Chr函数:
返回指定了ANSI字符代码对应的字符。
chr(chrcode)。
参数chrcode是相关的标识数字。
该函数的功能和asc函数形成对应。
比如:
asc(“a”)表示小写字母“a”的ANSI字符“97”;
同样chr(97)表示的就是“小写字母a”。
另外chr(chrcode)中参数chrcode值为0到31的数字时,表示不可打印的ASCII码。
比如“chr(10)”表示换行符,“chr(13)”表示回车符等,这常用于输入和显示格式的转换中。
(3)Len函数:
返回字符串内字符的数目(字节数)。
len(string)。
比如len(“love”)的值就是4。
(4)LCase函数:
返回所有字符串的小写形式。
lcase(string)。
比如lcase(“CNBruce”)返回为“cnbruce”。
(5)UCase函数:
返回所有字符串的大写形式。
与lcase函数形成对应。
同样,ucase(“CNBruce”)返回为“CNBRUCE”。
(6)Trim函数、LTrim函数和RTrim函数:
分别返回前导和后续不带空格、前导不带空格或后续不带空格的字符串内容。
trim(“cnbruce”)返回为“cnbruce”,前导和后续都不带空格;
ltrim(“cnbruce”)返回为“cnbruce”,前导不带空格;
rtrim(“cnbruce”)返回为“cnbruce”,后续不带空格;
该函数常用于注册信息中,比如确保注册用户名前或后的空格。
(7)Left函数:
返回从字符串的左边算起的指定数目的字符。
left(string,length)。
比如left(“brousce”,5)返回为“brous”,即前五位字符。
(8)Right函数:
right(string,length)。
比如right(“brousce”,4)返回为“usce”,即后四位字符。
(9)instr函数:
返回某字符串在另一字符串中第一次出现的位置。
比如现在查找字母“A”在字符串“A110B121C119D1861”中第一次出现的位置,则可以instr(my_string,"
A110B121C119D1861"
)
(10)Mid函数:
从字符串中返回指定数目的字符。
比如现在的“110”则应该是从字符串“A110B121C119D1861”的第2位取得3个单位的值:
mid("
2,3)
(11)Replace函数:
在字符串中查找、替代指定的字符串。
replace(strtobesearched,strsearchfor,strreplacewith)其中strtobesearched是字符串,strsearchfor是被查找的子字符串,strreplacewith是用来替代的子字符串。
比如replace(rscon,"
<
"
)则表示将rscon中所有“<
”的字符替换为“<
”
3,类型转换函数
Cbool(string)转换为布尔值
Cbyte(string)转换为字节类型的值
Ccur(string)转换为货币类值
Cdate(string)转换为日前类型的值
Cdbl(string)转换为双精度值
Cint(string)转换为整数值
Clng(string)转换为长整型的值
Csng(string)转换为单精度的值
Cstr(var)转换为字符串值
Str(var)数值转换为字符串
Val(string)字符串转换为数值
4,运算函数
Abs(nmb)返回数子的绝对值
Atn(nmb)返回一个数的反正切
Cos(nmb)返回一个角度的余炫值
Exp(nmb)返回自然指数的次方值
Int(nmb)返回数字的整形(进位)部份
Fix(nmb)返回数字的整形(舍去)部份
Formatpercent(表达式)返回百分比
Hex(nmb)返回数据的16进制数
Log(nmb)返回自然对数
Oct(nmb)返回数字的8进制数
Rnd返回大于“0”而小于“1”的随机数,但此前需randomize声明产生随机种子
Sgn(nmb)判断一个数字的正负号
Sin(nmb)返回角度的正铉值
Sqr(nmb)返回数字的二次方根
Tan(nmb)返回一个数的正切值
5,其他函数
IsArray(var)判断一个变量是否是数组
IsDate(var)判断一个变量是否是日期
IsNull(var)判断一个变量是否为空
IsNumeric(var)判断表达式是否包含数值
IsObject(var)判断一个变量是否是对象
TypeName(var)返回变量的数据类型
Array(list)返回数组
Split(liststr)从一个列表字符串中返回一个一维数组
LBound(arrayP返回数组的最小索引
Ubound(array)返回数组的最大索引
CreateObject(class)创建一个对象
GetObject(pathfilename)得到文件对象
ASP中Application和Session对象
一、Application对象的成员概述
Application对象成员包括Application对象的集合、方法和事件。
⒈Application对象的集合
Contents集合:
没有使用元素定义的存储于Applicaiton对象中的所有变量的集合
StaticObjects:
使用元素定义的存储于Application对象中的所有变量的集合
例:
在default.asp中有如下赋值
application("
a"
)="
b"
)=128
c"
)=false
则有contents集合
application.contents
(1)="
'
也可写为application.contents("
application.contents
(2)=128'
application.contents(3)=false'
在此笔者推荐你在调用时使用类如application.contents("
)的方法,因为这样更为直观,如果用序号来表示的话则要考虑赋值的先后顺序。
⒉Application对象的方法
Contents.Remove("
变量名"
):
从Application.Contents集合中删除指定的变量
Contents.RemoveAll():
把Application.Contents集合中的所有变量删除
Lock():
锁定Application对象,使得只有当前的ASP页对内容能进行访问
Unlock():
解除对Application对象的锁定
在default.asp中:
response.writeapplication.contents
(1)&
response.writeapplication.contents
(2)&
response.writeapplication.contents(3)&
response.write"
AfterRemoveb:
application.contents.remove("
执行结果:
a
128
False
AfterRemoveb:
如果要删除集合中所有变量用application.contents.removeall即可,至于Lock和Unlock方法在实际中经常用到,读者也比较熟悉,在此就不在累赘。
⒊Application对象事件
OnStart:
第一个访问服务器的用户第一次访问某一页面时发生
OnEnd:
当最后一个用户的会话已经结束并且该会话的OnEnd事件所有代码已经执行完毕后发生,或最后一个用户访问服务器一段时间(一般为20分钟)后仍然没有人访问该服务器产生。
想要定义application对象的OnStart和OnEnd事件里做什么需要将代码写在Global.asa这个文件里(下文有举例),并且将该文件放在站点的根目录下(一般是Inetpub\wwwroot\)
二、Session对象的成员概述
Session对象的成员比Application对象多一项属性,即:
集合、属性、方法、事件
⒈Session对象的集合
Contents:
没有使用元素定义的存储于特定Session对象的所有变量的集合。
StaticObject:
使用元素定义的、存储于Session对象中的所有变量的集合。
session("
session.contents
(1)="
也可写为session.contents("
session.contents
(2)=128'
session.contents(3)=false'
⒉Session对象的属性
CodePage:
可读/可写。
整型。
定义用于在浏览器中显示页内容的代码页。
代码页是字符集的数字值,不同的语言使用不同的代码页。
例如,ANSI代码页为1252,日文代码页为932,简体中文代码页为936。
LCID:
定义发送给浏览器的页面地区标识。
LCID是唯一地标识地区的一个国际标准缩写,例如,2057定义当前地区的货币符号是"
£"
。
SessionID:
只读。
长整型。
返回本会话的会话标识符。
每创建一个会话,由服务器自动分配一个标识符。
可以根据它的值判断两个用户是谁先访问服务器。
Timeout:
为会话定义以分钟为单位的超时限定。
如果用户在这个时间内没有刷新或请求任何一个网页,则该用户产生的会话自动结束。
缺省值是20。
以上属性在实际应用中作用不大,而且基本上不需要怎么修改,这几个属性也没什么特殊的地方。
⒊Session对象的方法
):
从Session.contents集合中删除指定的变量
Contents.Removeall():
删除Session.contents集合中的所有变量
Abandon():
结束当前用户会话并且撤消当前Session对象。
Session对象的Contents.Remove("
)和Contents.Removeall()方法与Application对象的基本上没什么区别,为帮助理解,大家可以参照上面的例子将Application改为Session。
这里要说明一下的是Contents.Removeall()和Abandon()的区别,执行这两个方法都会释放当前
用户会话的所有Session变量,不同的是Contents.Removeall()单纯地释放Session变量的值而不终止当前的会话,而Abandon()除了释放Session变量外还会终止会话引发Session_OnEnd事件,希望大家注意两者的区别。
⒋Session对象的事件
OnStart:
当ASP用户会话产生时触发,一旦有任一用户对本服务器请求任一页面即产生该事件。
OnEnd:
当ASP用户会话结束时触发,当使用Abandon()方法或超时也会触发该事件。
这两个事件和Application的OnStart、OnEnd事件一样,也是必须放在Global.asa文件里,下
面就重点和大家研究一下这四个事件的使用。
三、Global.asa
ASP的Application和Session对象体现了其他ASP内置对象所没有的特征--事件。
每一个访客访问服务器时都会触发一个OnStart事件(第一个访客会同时触发Application和Session的OnStart事件,但Application先于Session),每个访客的会话结束时都会触发一个OnEnd事件(最后一个访客会话结束时会同时触发Application和Session的OnEnd事件,但Session先于Application)。
OnStart和OnEnd这两个事件一般应用在虚拟社区中统计在线人数、修改用户的在线离线状态等。
要具体定义这两个事件,需要将代码写在Global.asa文件,并将该文件放在站点的根目录下(缺省是\Inetpub\wwwroot\)。
另外,Application和Session对象规定了在OnEnd事件里除了Application对象外其他ASP内置对象(Response、Request、Server、Session...)一概不能使用。
以下举一个虚拟社区统计在线人数的例子来说明如何使用这两个事件。
文件说明:
global.asa位于d:
\Inetpub\wwwroot\目录下
default.asp位于d:
\Inetpub\wwwroot\目录下,虚拟社区登录页面
login.asp位于d:
\Inetpub\wwwroot\目录下,用于检测用户输入的用户名及密码
index.asp位于d:
\Inetpub\wwwroot\目录下,虚拟社区首页
bbs.mdb位于d:
\Inetpub\wwwroot\目录下,存储用户信息的数据库
数据库(ACCESS)结构:
===bbs表===
id用户ID,长整型
name用户名,文本型
code密码,文本型
online在线状态,是/否
===global.asa===
<scriptLANGUAGE="
VBScript"
RUNAT="
Server"
>
SubApplication_OnStart
application("
online"
)=0
EndSub
subApplication_OnEnd
ndSub
SubSession_OnStart
SubSession_OnEnd
ifsession.contents("
pass"
)then'
判断是否为登录用户的Session_OnEnd
application.lock
application("
)=application("
)-1
application.unlock
endif
</script>
===login.asp===
......'
密码验证,连接数据库,检测用户输入的用户名及密码是否正确
if密码验证通过then
session("
name"
)=rs("
id"
)=true
else
rs.close
conn.close
response.write"
密码错误!
response.end
endif
application.lock
)+1
conn.Execute("
updatebbssetonline=1whereid="
&
session("
))'
将用户的状态设为在线
application.unlock
rs.close
conn.close
response.redirect"
index.asp"
初始化数据后跳转到社区首页
===========
在本例中,用application("
)变量记录已经登录社区的在线人数,因为一旦有用户访问服务器而不管用户是否登录,都会产生OnStart事件,所以不能在OnStart事件里使Applicaiton("
)加一。
因为不管是否是登录用户的会话结束都会产生OnEnd事件(假如有访客访问了服务器但并不登录社区,他的会话结束后也会产生OnEnd事件),所以在Session_OnEnd事件里用了句if语句来判断是否为已登录用户的OnEnd事件,如果是才将在线人数减一。
这只是一个统计在线人数的简单例子,对于一个完整的虚拟社区来说,仅仅统计有多少人在线是不够的,在本例中数据库里有个online字段是用来记录用户的在线状态,用户登录的时候,在login.asp里将online设为1,但用户离线时并没有将online设为0,要完善它,就要修改一下Session_OnEnd事件,在该事件里将online设为0。
===global.sas===
<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP 说明