欢迎光临
我们一直在努力

ASP学习摘要-ASP教程,ASP应用

建站超值云服务器,限时71元/月

asp语言的特点

1.允许使用vbscript或javascript简易script语言,并可在文件中结合html;

2.无需编译,由webserver执行产生;

3.与任何activex script兼容;

4.asp原始代码不会传到客户端,客户端显示的是执行结果。

<form>表单语法:

<form name="strname" id="strid" action="" method="post/get">content</form>;

<input>类型:

<input type=text name="strname" value="strvalue" size="num" maxlength="num" [disable]>;

<input type=password name="strname" value="strvalue">;

<input type=radio name="strname" value="strvalue" [checked]>;

<input type=checkbox name="strname" value="strvalue" [checked]>;

<input type=file name="strname" size="20">

<input type=hidden name="strname" value="strvalue">

<input type="submit" name="strname" value="strvalue">

<input type="reset" name="strname" value="strvalue">

<input type="button" name="strname" value="strvalue">

<select name="strname" [multiple]><option value="strvalue" selected>text[<option>n]</select>

<textarea name="strname" rows="num" cols="num">text</textarea>

<frameset>语法:

<frameset rows/cols="num,num/*.."><frame name="strname" src="strsrc">[<frame>n [<frameset>..</frameset>]]</frameset>

<noframe><body>warning!</body></noframe> 无框架提示;

控制框架内容:<a href="strsrc" target="strframename"> 就可以了。

用javascript: document.frame.strframename.location="strsrc";

vbscript常用函数:

1.数值型函数:

abs(num): 返回绝对值

sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负

hex(num): 返回十六进制值 直接表示:&hxx 最大8位

oct(num): 返回八进制值 直接表示:&oxx 最大8位

sqr(num): 返回平方根 num>0

int(num): 取整 int(99.8)=99; int(-99.2)=100

fix(num): 取整 fix(99.8)=99; fix(-99.2)=99

round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2

log(num): 取以e为底的对数 num>0

exp(n): 取e的n次幂 通常用 num^n

sin(num): 三角函数,以弧度为值计算 (角度*pai)/180=弧度 con(num); tan(num); atn(num)

2.字符串函数:

len(str):计算字符串长度 中文字符长度也计为一!

mid(str,起始字符,[读取长度]):截取字符串中间子字符串

left(str,nlen):从左边起截取nlen长度子字符串

right(str,nlen):从右边起截取nlen长度子字符串

lcase(str):字符串转成小写

ucase(str):字符串转成大写

trim(str):去除字符串两端空格

ltrim(str):去除字符串左侧空格

rtrim(str):去除字符串右侧空格

replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串

注:默认值:起始字符 1;替代次数 不限;比较方法 区分大小写(0)

instr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串 可选参数需同时选 返回起始位置

instrrev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串 返回起始位置

space(n):构造n个空格的字符串

string(n,str):构造由n个str第一个字符组成的字符串

strreverse(str):反转字符串

split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组 可选参数需同时选

3.数据类型转换函数:

cint(str):转换正数 true -1;false 0;日期 距离1899/12/31天数;时间 上午段 0;下午段 1;

cstr(str):日期 输出格式 yyyy/mm/dd;时间 输出格式 am/pm hh:mm:ss

clng(str):与cin()类似

cbool(num):num不为零 true;反之 false

cdate(str):转换日期格式 0:#am 12:00:00#;正数 距离1899/12/31天数的日期;浮点数 日期+小数时间

cbyte(num):num<255 转换为字节

csng(str):转换为单精度数值

cdbl(str):转换为双精度数值

ccur(str):转换为现金格式

4.时间函数:

date:取系统当前日期

time:取系统当前时间

now:取系统当前时间及日期值 datetime类型

timer:取当前时间距离零点秒值,计时器,可计算时间差

dateadd(间隔单位,间隔值,日期):推算相邻日期

datediff(间隔单位,日期一,日期二):计算时间差 日期二-日期一

datepart(间隔单位,日期):计算日期的间隔单位值

dateserial(date):输出日期值(按序列计算)

timeserial(time):输出时间值(按序列计算)

datevalue(datetime):取出字符串中日期值

timevalue(datetime):取出字符串中时间值

weekday(date):计算星期几

monthname(date):输出月分名

year(datetime):截取年份

month(datetime):截取月份

day(datetime):截取日

hour(datetime):截取小时

minute(datetime):截取分钟

second(datetime):截取秒

5.其它函数:

array(unit,..):动态生成数组

asc(str):输出字符串第一个字符的ascii码

chr(asc):转换ascii为字符 enter:chr(13)&chr(10)

filter(数组名称,关键字符串,[,包含][,比较方法]):

将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false则取不包含的元素

join(arrayname):将数组中元素连成字符串

ubound(arrayname[,维数]):取得数组相应维数的上界

lbound(arrayname[,维数]):取得数组相应维数的下界 一般为0

randmize n:启动随机数种子

rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数

取介于a和b之间的随机正数c,公式:c=int((b-a+1)*rnd+a) 条件(b>a)

子程序和自定义函数

sub strsubname function strfunname(arg[1],..)

子程序体 函数体

exit sub 中途跳出 exit function 中途跳出

end sub strfunname=value 返回值

end function

[call] strsubname 引用子程序 var=strfunname(arg[1],..) 引用函数

子程序和自定义函数可以递归调用;

asp六大对象常用语句示范:

response:

response.write strvar/"string":向网页写出参数值或字符串 等同于在html标记中嵌入<%=strvar/"string"%>

response.end:停止页面编译,并将已经编译内容输出到浏览器

response.buffer=true|false:页面编译时是否使用缓存的设置,一般在页面头部设置

response.flush:强制输出页面已编译部分内容

response.clear:将缓冲区内的数据清除

response.redirect url:停止页面编译或输出,转载指定所需页面

response.isclientconnected:返回true|false,检测用户是否还处于连接状态

response.charset(charsetname):设置页面编码类型,即<meta http-equiv="content-type" content="text/html; charset=gb2312">

response.contenttype [= contenttype ]:设置页面文件类型,同上

response.expires [= number]:设置页面失效时间,单位分钟

response.expiresabsolute [= [date] [time]]:设置页面失效的绝对时间

response.status = statusdescription:设置页面状态描述

request:

request("passstrname"):读取网页传递值,包括表单及以?passstrname=value&passstrname_n=value_n形式

request[.collection|property|method](variable)

request.querystring("passstrname"):读取get方法传递的表单值和?passstrname=value

request.querystring(varible)[(index).count]

request.form("passstrname"):读取post方法传递的纯表单域的值

request.form(parameter)[(index).count]

request.servervaribles(server environment variable):读取客户端系统环境变量,详见参考

request.binaryread(count):读取指定字节数的传送值

request.totalbytes:查询体的长度,以字节为单位,只读

注:同名表单如:checkbox如有多项值,传递形式如右,strname=value1,value2,…需要用split函数分割各项值

multiple的select表单与checkbox类似,textarea的值可包含换行字符,用replace转为<br>,以满足格式需要

session:(用户全局变量)

session("sesname")=value:存储session变量值,也可读取该值

session("sesname")=empty:判断session值是否存在的两种方法

isempty(session("sesname"))=true|false:判断session值是否存在的两种方法

session.timeout=num:设置session变量的存在时效,单位分钟

session.abandon:清除所有session变量值

session.sessionid:session变量的id序列号,只读

application:(应用程序全局变量)

application("appname")=value:存储application变量值,也可读取该值

application("appname")=empty:判断application值是否存在的两种方法

isempty(application("appname"))=true|false:判断application值是否存在的两种方法

application.lock:application变量值锁定,防止同时更改变量值

application.unlock:application变量值解锁,允许更改变量值

注:session与application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,

但不能直接改变其值,需要借助临时数组修改值后,再赋给session与application变量

global.asa文件的结构:<% @language="vbscript"%>

<% sub application_onstart …end sub

sub application_onend … end sub

sub session_onstart …end sub

sub session_onend … end sub%>

server:

server.mappath("fileurl"):映射文件名的服务器站点绝对地址,path=server.mappath(./)可以得到虚拟目录根路径

server.htmlencode("string"):转换为可以直接显示带html格式的字符串,如:<,>等

server.urlencode( "string"):转换为浏览器地址编码

set var=server.creatobject("objname"):创建对象变量

server.scripttimeout = numseconds:asp程序页面执行时限,以秒为单位

cookies: 存储在用户本机的临时变量,每个cookie的最大字节4kb,最多可以有300个cookie 1.2mb

response.cookies("strcookiename")=value:存储cookie变量值,也可读取该值

response.cookies("strcookiename")="":判断是否为空

response.cookies("strcookiename").expires=date:变量有效期,以天为单位,小于当前时间立即失效

response.cookies(cookie[(key).attribute]):标准语法

objectcontext 控制asp的事务处理

objectcontext.ontransactionabort:由放弃的事务处理事件激发,在脚本完成处理后发生

objectcontext.ontransactioncommit:由成功的事务处理事件激发,在脚本完成处理后发生

objectcontext.setabort:显式的放弃一次事务处理

objectcontext.setcomplete:覆盖前面任何调用objectcontext.setabort方法的调用

msgbox "string"/strname:vbscript提示框

表单的onsubmit事件:在同一页面写入 function formname_onsubmit()..formname_onsubmit=true/false..end function,

页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。

数据库连接字符串举例:

access2000:

conn.open "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("dbase\liuyan.mdb")

conn.open "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("dbase\liuyan.mdb")&";password=admin"

recordset.open "数据表名", conn, 2, 2

sqlserver2000:

conn.open "provider=sqloledb.1;user id=sa;password=admin;initial catalog=pubs;data source=server\garlmrm"

conn.open "provider=sqloledb;data source=hyserver;uid=sa;pwd=;database=pubs"

recordset.open strsql, conn, 2, 2

dbase:(?)

conn open "driver={microsoft dbase driver};sourcetype=db;sourcedb=" & server.mappath( "目录名" )

recordset.open strsql, conn, 2, 2

foxbase:

conn open "driver={microsoft visual foxpro driver};sourcetype=dbf;sourcedb=" & server.mappath( "目录名" )

recordset.open dbf文件名或select语句, conn, 2, 2

conn open "driver={microsoft visual foxpro driver};sourcetype=dbc;sourcedb=" & server.mappath( "dbc数据库文件名" )

recordset.open dbf文件名或select语句, conn, 2, 2

excel:

conn open "driver={microsoft excel driver (*.xls)};dbq=" & server.mappath( "xls文件名" )

recordset.open "select * from ["&sheet&"$]",conn,2,2

注:使用dbf、dbc、excel数据库,下面几点要注意:excel数据库只能读取、增加记录、修改记录,但不能删除记录;

dbf、dbc可以读取记录、增加记录、删除记录、修改记录,但是在增加记录时,任何一个字段值都不能为空,由此

可看出局限性很大,所以尽可能地用mdb或sql数据库。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ASP学习摘要-ASP教程,ASP应用
分享到: 更多 (0)