分享
 
 
 

ASP学习摘要

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

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数据库。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有