asp经典代码语录

<%

’判断文件名是否合法

Function isFilename(aFilename)

 Dim sErrorStr,iNameLength,i

 isFilename=TRUE

 sErrorStr=Array("/","",":","*","?","""","<",">","|")

 iNameLength=Len(aFilename)

 If iNameLength<1 Or iNameLength=null Then

  isFilename=FALSE

 Else

  For i=0 To 8

   If instr(aFilename,sErrorStr(i)) Then

    isFilename=FALSE    

   End If

  Next

 End If

End Function

’去掉字符串头尾的连续的回车和空格

function trimVBcrlf(str)

 trimVBcrlf=rtrimVBcrlf(ltrimVBcrlf(str))

end function

’去掉字符串开头的连续的回车和空格

function ltrimVBcrlf(str)

 dim pos,isBlankChar

 pos=1

 isBlankChar=true

 while isBlankChar

  if mid(str,pos,1)=" " then

   pos=pos+1

  elseif mid(str,2)=VBcrlf then

   pos=pos+2

  else

   isBlankChar=false

  end if

 wend

 ltrimVBcrlf=right(str,len(str)-pos+1)

end function

’去掉字符串末尾的连续的回车和空格

function rtrimVBcrlf(str)

 dim pos,isBlankChar

 pos=len(str)

 isBlankChar=true

 while isBlankChar and pos>=2

  if mid(str,1)=" " then

   pos=pos-1

  elseif mid(str,pos-1,2)=VBcrlf then

   pos=pos-2

  else

   isBlankChar=false

  end if

 wend

 rtrimVBcrlf=rtrim(left(str,pos))

end function

’判断Email是否有效,返回1表示正确

Function isEmail(aEmail)

 Dim iLocat,v,iLength,i,checkletter

 If instr(aEmail,"@") = 0 Or instr(aEmail,".") = 0 Then

  isEmail=0

  EXIT FUNCTION

 End If

 iLocat=instr(aEmail,"@")

 If instr(iLocat,aEmail,".")=0 Or instr(iLocat+1,"@")>0 Then

  isEmail=0

  EXIT FUNCTION

 End If

 If left(aEmail,1)="." Or right(aEmail,1)="." Or left(aEmail,1)="@" Or right(aEmail,1)="@" Then

  isEmail=0

  EXIT FUNCTION

 End If

 v="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.@"

 iLength=len(aEmail)

 For i=1 To iLength

  checkletter=mid(aEmail,1)

  If instr(v,checkletter)=0 Then

   isEmail=0

   EXIT FUNCTION

  End If

 Next

 isEmail=1

End Function

’测试用:显示服务器信息

Sub showServer

 Dim name

 Response.write "<Table border=1 bordercolor=lightblue CELLSPACING=0>"

 for each name in request.servervariables

  Response.write "<tr>"

  Response.write "<td>"&name&"</td>"

  Response.write "<td>"&request.servervariables(name)&"<br/></td>"

  Response.write "</tr>"

 next

 Response.write "</table>"

End Sub

’测试用:显示Rs结果集以及字段名称

Sub showRs(rs)

 Dim strTable,whatever

 Response.write "<center><table><tr>"

 for each whatever in rs.fields

  response.write "<td><b>" & whatever.name & "</B></TD>"

 next

 strTable = "</tr><tr><td>"&rs.GetString(,"</td><td>","</tr><tr><td>"," ") &"</td></tr></table></center>"

 Response.Write(strTable)

End Sub

’用HTML格式显示文本

Function txt2Html(str)

 if isnull(str) then

  txt2Html=""

  exit Function

 end if

 str=Replace(str,chr(34),""")

 str=Replace(str,"<")

 str=Replace(str,">")

 str=Replace(str,chr(13)+chr(10),"<br/>")

 str=Replace(str,chr(9),"    ")

 str=Replace(str," "," ")

 txt2Html=str

End Function

’测试用:显示调试错误信息

Sub showError

 Dim sErrMsg

 sErrMsg=Err.Source&" "&Err.Description

 Response.write "<center>"&sErrMsg&"</center>"

 Err.clear

End Sub

’显示文字计数器

Sub showCounter

Dim fs,outfile,filename,count

filename=server.mappath("count.txt")

Set fs = CreateObject("Scripting.FileSystemObject")

If fs.fileExists(filename) Then

 Set outfile=fs.openTextFile(filename,1)

 count=outfile.readline

 count=count+1

 Response.write "<center>浏览人次:"&count&"<center>"

 outfile.close

 Set outfile=fs.CreateTextFile(filename)

 outfile.writeline(count)

Else

 Set outfile=fs.openTextFile(filename,8,TRUE)

 count=0

 outfile.writeline(count)

END IF

outfile.close

set fs=nothing

End Sub

%>

<script>alert("今天星期"+"天一二三四五六".charAt(new Date().getDay()));</script>

<input type=checkbox name=mm value=a onclick="Item(this,'mmAll')"><br/>

<input type=checkbox name=mm value=b onclick="Item(this,'mmAll')"><br/>

<input type=checkbox name=mm value=c onclick="Item(this,'mmAll')"><br/>

<input type=checkbox name=mm value=d onclick="Item(this,'mmAll')"><br/>

<input type=checkbox name=mm value=e onclick="Item(this,'mmAll')"><br/><br/>

<input type=checkbox name=mmAll onclick="All(this,'mm')">全选与不全选的切换

<script language=Javascript>

function All(e,itemName)

{

  var aa = document.getElementsByName(itemName);

  for (var i=0; i<aa.length; i++)

   aa[i].checked = e.checked; //得到那个总控的复选框的选中状态

}

function Item(e,allName)

{

  var all = document.getElementsByName(allName)[0];

  if(!e.checked) all.checked = false;

  else

  {

    var aa = document.getElementsByName(e.name);

    for (var i=0; i<aa.length; i++)

     if(!aa[i].checked) return;

    all.checked = true;

  }

}

</script>

只能输汉字:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"

只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"

数字和英文:onkeyup="value=value.replace(/[W]/g,''))"

让层不被控件复盖代码:

<div z-Index:2><object xxx></object></div> # 前面

<div z-Index:1><object xxx></object></div> # 后面

<div id="Layer2" position:absolute; top:40;width:400px; height:95px;z-

index:2"><table height=100% width=100% bgcolor="#ff0000"><tr><td height=100% width=100%

></td></tr></table><iframe width=0 height=0></iframe></div>

<div id="Layer1" position:absolute; top:50;width:200px; height:115px;z-

index:1"><iframe height=100% width=100%></iframe></div>

15.动网FLASH广告代码:

<object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000"

codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0

,0" width="468" height="60"><param name=movie value="images/yj16d.swf"><param name=quality

value=high><embed src="images/dvbanner.swf" quality=high

pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?

P1_Prod_Version=ShockwaveFlash"; type="application/x-shockwave-flash" width="468"

height="60"></embed></object>

使用FSO读取文件内容的函数

function FSOFileRead(filename)

Dim objFSO,objCountFile,FiletempData

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True)

FSOFileRead = objCountFile.ReadAll

objCountFile.Close

Set objCountFile=Nothing

Set objFSO = Nothing

End Function

18.使用FSO读取文件某一行的函数

function FSOlinedit(filename,lineNum)

if linenum < 1 then exit function

dim fso,f,temparray,tempcnt

set fso = server.CreateObject("scripting.filesystemobject")

if not fso.fileExists(server.mappath(filename)) then exit function

set f = fso.opentextfile(server.mappath(filename),1)

if not f.AtEndofStream then

tempcnt = f.readall

f.close

set f = nothing

temparray = split(tempcnt,chr(13)&chr(10))

if lineNum>ubound(temparray)+1 then

exit function

else

FSOlinedit = temparray(lineNum-1)

end if

end if

end function

19.使用FSO写文件某一行的函数

function FSOlinewrite(filename,lineNum,Linecontent)

if linenum < 1 then exit function

dim fso,tempCnt

set fso = server.CreateObject("scripting.filesystemobject")

if not fso.fileExists(server.mappath(filename)) then exit function

set f = fso.opentextfile(server.mappath(filename),1)

if not f.AtEndofStream then

tempcnt = f.readall

f.close

temparray = split(tempcnt,chr(13)&chr(10))

if lineNum>ubound(temparray)+1 then

exit function

else

temparray(lineNum-1) = lineContent

end if

tempcnt = join(temparray,chr(13)&chr(10))

set f = fso.createtextfile(server.mappath(filename),true)

f.write tempcnt

end if

f.close

set f = nothing

end function

20.使用FSO添加文件新行的函数

function FSOappline(filename,Linecontent)

dim fso,f

set fso = server.CreateObject("scripting.filesystemobject")

if not fso.fileExists(server.mappath(filename)) then exit function

set f = fso.opentextfile(server.mappath(filename),1)

f.write chr(13)&chr(10)&Linecontent

f.close

set f = nothing

end function

21.读文件最后一行的函数

function FSOlastline(filename)

dim fso,chr(13)&chr(10))

FSOlastline = temparray(ubound(temparray))

end if

end function 

 

ServerVariables 集合检索预定的环境变量。

语法

Request.ServerVariables (server environment variable)

参数

服务器环境变量

指定要检索的服务器环境变量名。可以使用下面列出的值。变量 说明

ALL_HTTP 客户端发送的所有 HTTP 标题文件。

ALL_RAW 检索未处理表格中所有的标题。ALL_RAW 和 ALL_HTTP 不同,ALL_HTTP 在标题文件名前面放置 HTTP_ prefix,并且标题名称总是大写的。使用 ALL_RAW 时,标题名称和值只在客户端发送时才出现。

APPL_MD_PATH 检索 ISAPI DLL 的 (WAM) Application 的元数据库路径。

APPL_PHYSICAL_PATH 检索与元数据库路径相应的物理路径。IIS 通过将 APPL_MD_PATH 转换为物理(目录)路径以返回值。

AUTH_PASSWORD 该值输入到客户端的鉴定对话中。只有使用基本鉴定时,该变量才可用。

AUTH_TYPE 这是用户访问受保护的脚本时,服务器用于检验用户的验证方法。

AUTH_USER 未被鉴定的用户名。

CERT_COOKIE 客户端验证的唯一 ID,以字符串方式返回。可作为整个客户端验证的签字。

CERT_FLAGS 如有客户端验证,则 bit0 为 1。

如果客户端验证的验证人无效(不在服务器承认的 CA 列表中),bit1 被设置为 1。

CERT_ISSUER 用户验证中的颁布者字段(O=MS,OU=IAS,CN=user name,C=USA)。

CERT_KEYSIZE 安全套接字层连接关键字的位数,如 128。

CERT_SECRETKEYSIZE 服务器验证私人关键字的位数。如 1024。

CERT_SERIALNUMBER 用户验证的序列号字段。

CERT_SERVER_ISSUER 服务器验证的颁发者字段。

CERT_SERVER_SUBJECT 服务器验证的主字段。

CERT_SUBJECT 客户端验证的主字段。

CONTENT_LENGTH 客户端发出内容的长度。

CONTENT_TYPE 内容的数据类型。同附加信息的查询一起使用,如 HTTP 查询 GET、 POST 和 PUT。

GATEWAY_INTERFACE 服务器使用的 CGI 规格的修订。格式为 CGI/revision。

HTTP_<HeaderName> HeaderName 存储在标题文件中的值。未列入该表的标题文件必须以 HTTP_ 作为前缀,以使 ServerVariables 集合检索其值。

注意 服务器将 HeaderName 中的下划线(_)解释为实际标题中的破折号。例如,如果您指定 HTTP_MY_HEADER,服务器将搜索以 MY-HEADER 为名发送的标题文件。

HTTPS 如果请求穿过安全通道(SSL),则返回 ON。如果请求来自非安全通道,则返回 OFF。

HTTPS_KEYSIZE 安全套接字层连接关键字的位数,如 128。

HTTPS_SECRETKEYSIZE 服务器验证私人关键字的位数。如 1024。

HTTPS_SERVER_ISSUER 服务器验证的颁发者字段。

HTTPS_SERVER_SUBJECT 服务器验证的主字段。

INSTANCE_ID 文本格式 IIS 实例的 ID。如果实例 ID 为 1,则以字符形式出现。使用该变量可以检索请求所属的(元数据库中)Web 服务器实例的 ID。

INSTANCE_META_PATH 响应请求的 IIS 实例的元数据库路径。

LOCAL_ADDR 返回接受请求的服务器地址。如果在绑定多个 IP 地址的多宿主机器上查找请求所使用的地址时,这条变量非常重要。

LOGON_USER 用户登录 Windows NT&reg; 的帐号。

PATH_INFO 客户端提供的额外路径信息。可以使用这些虚拟路径和 PATH_INFO 服务器变量访问脚本。如果该信息来自 URL,在到达 CGI 脚本前就已经由服务器解码了。

PATH_TRANSLATED PATH_INFO 转换后的版本,该变量获取路径并进行必要的由虚拟至物理的映射。

QUERY_STRING 查询 HTTP 请求中问号(?)后的信息。

REMOTE_ADDR 发出请求的远程主机的 IP 地址。

REMOTE_HOST 发出请求的主机名称。如果服务器无此信息,它将设置为空的 MOTE_ADDR 变量。

REMOTE_USER 用户发送的未映射的用户名字符串。该名称是用户实际发送的名称,与服务器上验证过滤器修改过后的名称相对。

REQUEST_METHOD 该方法用于提出请求。相当于用于 HTTP 的 GET、HEAD、POST 等等。

SCRIPT_NAME 执行脚本的虚拟路径。用于自引用的 URL。

SERVER_NAME 出现在自引用 UAL 中的服务器主机名、DNS 化名或 IP 地址。

SERVER_PORT 发送请求的端口号。

SERVER_PORT_SECURE 包含 0 或 1 的字符串。如果安全端口处理了请求,则为 1,否则为 0。

SERVER_PROTOCOL 请求信息协议的名称和修订。格式为 protocol/revision 。

SERVER_SOFTWARE 应答请求并运行网关的服务器软件的名称和版本。格式为 name/version 。

URL 提供 URL 的基本部分。

注释

如果客户端发送的标题文件在上述表格中找不到,可以在调用 Request.ServerVariables 中给标题文件名加上 HTTP_ 的前缀以检索其值。例如,如果客户端发送标题文件

SomeNewHeader:SomeNewValue

您可以通过使用下面的语法检索 SomeNewValue

<% Request.ServerVariables("HTTP_SomeNewHeader") %>

您可使用重述符以循环遍历所有的服务器变量名。例如,使用下面的脚本打印出所有的服务器名。

<TABLE>

<TR><TD><B>Server Variable</B></TD><TD><B>Value</B></TD></TR>

<% For Each name In Request.ServerVariables %>

<TR><TD> <%= name %> </TD><TD> <%= Request.ServerVariables(name) %> </TD></TR>

</TABLE>

<% Next %>

示例

下面的例子使用 Request 对象显示一些服务器变量。

<HTML>

<!-- This example displays the content of several ServerVariables. -->

ALL_HTTP server variable =

<%= Request.ServerVariables("ALL_HTTP") %> <BR>

CONTENT_LENGTH server variable =

<%= Request.ServerVariables("CONTENT_LENGTH") %> <BR>

CONTENT_TYPE server variable =

<%= Request.ServerVariables("CONTENT_TYPE") %> <BR>

QUERY_STRING server variable =

<%= Request.ServerVariables("QUERY_STRING") %> <BR>

SERVER_SOFTWARE server variable =

<%= Request.ServerVariables("SERVER_SOFTWARE") %> <BR>

</HTML>

下一个示例使用 ServerVariables 集合将服务器名插入一个超文本链接。

<A HREF = "http://<%= Request.ServerVariables("SERVER_NAME") %>

/scripts/MyPage.asp">Link to MyPage.asp</A>

条型码code-128 c类编码,调用produceHTML(str),code-128 c类的编码规则,自己去查。

这个也有php版,是国外的一个人写的,不过他的php版有一些bug,我从他的php版改来的,写得乱七八糟的,大家自己整理。

<%

            ascii= " !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~"

dim arr128(106)

arr128(0)= "212222"'c类有自己的规则,这里的数字是表示白黑条的宽度

arr128(1)= "222122"

arr128(2)= "222221"

arr128(3)= "121223"

arr128(4)= "121322"

arr128(5)= "131222"

arr128(6)= "122213"

arr128(7)= "122312"

arr128(8)= "132212"

arr128(9)= "221213"

arr128(10)= "221312"

arr128(11)= "231212"

arr128(12)= "112232"

arr128(13)= "122132"

arr128(14)= "122231"

arr128(15)= "113222"

arr128(16)= "123122"

arr128(17)= "123221"'1

arr128(18)= "223211"

arr128(19)= "221132"

arr128(20)= "221231"

arr128(21)= "213212"

arr128(22)= "223112"

arr128(23)= "312131"

arr128(24)= "311222"

arr128(25)= "321122"'9

arr128(26)= "321221"

arr128(27)= "312212"

arr128(28)= "322112"

arr128(29)= "322211"

arr128(30)= "212123"

arr128(31)= "212321"

arr128(32)= "232121"

arr128(33)= "111323"

arr128(34)= "131123"

arr128(35)= "131321"

arr128(36)= "112313"

arr128(37)= "132113"

arr128(38)= "132311"

arr128(39)= "211313"

arr128(40)= "231113"

arr128(41)= "231311"

arr128(42)= "112133"

arr128(43)= "112331"

arr128(44)= "132131"

arr128(45)= "113123"

arr128(46)= "113321"

arr128(47)= "133121"

arr128(48)= "313121"

arr128(49)= "211331"

arr128(50)= "231131"

arr128(51)= "213113"

arr128(52)= "213311"

arr128(53)= "213131"

arr128(54)= "311123"

arr128(55)= "311321"

arr128(56)= "331121"

arr128(57)= "312113"

arr128(58)= "312311"

arr128(59)= "332111"

arr128(60)= "314111"

arr128(61)= "221411"

arr128(62)= "431111"

arr128(63)= "111224"

arr128(64)= "111422"

arr128(65)= "121124"

arr128(66)= "121421"

arr128(67)= "141122"

arr128(68)= "141221"

arr128(69)= "112214"

arr128(70)= "112412"

arr128(71)= "122114"

arr128(72)= "122411"

arr128(73)= "142112"

arr128(74)= "142211"

arr128(75)= "241211"

arr128(76)= "221114"

arr128(77)= "413111"

arr128(78)= "241112"

arr128(79)= "134111"

arr128(80)= "111242"

arr128(81)= "121142"

arr128(82)= "121241"

arr128(83)= "114212"

arr128(84)= "124112"

arr128(85)= "124211"

arr128(86)= "411212"

arr128(87)= "421112"

arr128(88)= "421211"

arr128(89)= "212141"

arr128(90)= "214121"

arr128(91)= "412121"

arr128(92)= "111143"

arr128(93)= "111341"

arr128(94)= "131141"

arr128(95)= "114113"

arr128(96)= "114311"

arr128(97)= "411113"

arr128(98)= "411311"

arr128(99)= "113141"

arr128(100)= "114131"

arr128(101)= "311141"

arr128(102)= "411131"

arr128(103)= "211412"

arr128(104)= "211214"

arr128(105)= "211232"

arr128(106)= "2331112"

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

function produceArray(intext)

'response.write  intext

'response.end

total = 104

'//// START

ticketArray= "104"

onChar=0

'//// GO THRU ARRAY GET LETTERS

for z=1 to len(intext)

pos= instr(ascii,mid(intext,z,1))

'/// SKIP,NOT FOUND CHARS,continue loop

'text=text&mid(intext,i)&"<br/>"

onChar=onChar+1

ticketArray= ticketArray&","&pos

total = total+( onChar * pos )

next

'response.write text

'response.end()

'/// CHECK CHAR

ticketArray=ticketArray&","&( total mod 103 )

'//// END

ticketArray=ticketArray&",106"

produceArray=ticketArray

end function

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

function produceHTML(givetext)

alignment=0

fheight=30

fwidth=1

bImg="a.jpg"'a与b的宽都为1,a为黑色,b为白色

wImg="b.jpg"

dim color(1)

ticketArray = produceArray(givetext)

ticketArray=split(ticketArray,",")

html ="<table cellpadding=5 cellspacing=0 border=0 bgcolor=white align='left'><tr><td>"

'/// ARRAY OF IMAGES

color(0)= bImg

color(1)= wImg

'//// OUTPUT HTML

'if ( is_array($ticketArray) ) {

for each ele in ticketArray

bon = 0

info = arr128(int(ele))

for i=1 to len(info)

if alignment=0 then

html = html&"<img src='"&color(bon)&"'  height='"&fheight&"' width = '"&int(mid(info,1)*fwidth)&"'>"

    else

html = html&"<img src='"&color(bon)&"'  width='"&fheight&"'  height = '"&int(mid(info,1)*fwidth)&"'>"

end if

if bon=0 then

bon=1

else

bon=0

end if

next

next

html = html&"</td></tr></table>"

produceHTML=html

end function

%>

相关文章

数组的定义 Dim MyArray MyArray = Array(1‚5‚123‚12‚98...
\'参数: \'code:要检测的代码 \'leixing:html或者ubb \'n...
演示效果: 代码下载: 点击下载
环境:winxp sp2 ,mysql5.0.18,mysql odbc 3.51 driver 表采...
其实说起AJAX的初级应用是非常简单的,通俗的说就是客户端(j...
<% ’判断文件名是否合法 Function isFilename(aFilename...