分享你我的心得.
共乘一片美好网络.

ASP常用函数的10经典大收集

ASP常用函数的10经典大收集

‘过滤特殊字符
‘*************************************
Function Filterstr(Str)
If Isnull(Str) Then
Filterstr = ""
Exit Function
End If
Str = Replace(Str,Chr(0),"",1,-1,1)
Str = Replace(Str,"""",""",1,-1,1)
Str = Replace(Str,"<","&lt;",1,-1,1)
Str = Replace(Str,">","&gt;",1,-1,1)
Str = Replace(Str,"script","&#115;cript",1,-1,0)
Str = Replace(Str,"SCRIPT","&#083;CRIPT",1,-1,0)
Str = Replace(Str,"Script","&#083;cript",1,-1,0)
Str = Replace(Str,"script","&#083;cript",1,-1,1)
Str = Replace(Str,"object","&#111;bject",1,-1,0)
Str = Replace(Str,"OBJECT","&#079;BJECT",1,-1,0)
Str = Replace(Str,"Object","&#079;bject",1,-1,0)
Str = Replace(Str,"object","&#079;bject",1,-1,1)
Str = Replace(Str,"applet","&#097;pplet",1,-1,0)
Str = Replace(Str,"APPLET","&#065;PPLET",1,-1,0)
Str = Replace(Str,"Applet","&#065;pplet",1,-1,0)
Str = Replace(Str,"applet","&#065;pplet",1,-1,1)
Str = Replace(Str,"[","&#091;")
Str = Replace(Str,"]","&#093;")
Str = Replace(Str,"""","",1,-1,1)
Str = Replace(Str,"=","&#061;",1,-1,1)
Str = Replace(Str,"’","”",1,-1,1)
Str = Replace(Str,"select","sel&#101;ct",1,-1,1)
Str = Replace(Str,"execute","&#101xecute",1,-1,1)
Str = Replace(Str,"exec","&#101xec",1,-1,1)
Str = Replace(Str,"join","jo&#105;n",1,-1,1)
Str = Replace(Str,"union","un&#105;on",1,-1,1)
Str = Replace(Str,"where","wh&#101;re",1,-1,1)
Str = Replace(Str,"insert","ins&#101;rt",1,-1,1)
Str = Replace(Str,"delete","del&#101;te",1,-1,1)
Str = Replace(Str,"update","up&#100;ate",1,-1,1)
Str = Replace(Str,"like","lik&#101;",1,-1,1)
Str = Replace(Str,"drop","dro&#112;",1,-1,1)
Str = Replace(Str,"create","cr&#101;ate",1,-1,1)
Str = Replace(Str,"rename","ren&#097;me",1,-1,1)
Str = Replace(Str,"count","co&#117;nt",1,-1,1)
Str = Replace(Str,"chr","c&#104;r",1,-1,1)
Str = Replace(Str,"mid","m&#105;d",1,-1,1)
Str = Replace(Str,"truncate","trunc&#097;te",1,-1,1)
Str = Replace(Str,"nchar","nch&#097;r",1,-1,1)
Str = Replace(Str,"char","ch&#097;r",1,-1,1)
Str = Replace(Str,"alter","alt&#101;r",1,-1,1)
Str = Replace(Str,"cast","ca&#115;t",1,-1,1)
Str = Replace(Str,"exists","e&#120;ists",1,-1,1)
Filterstr = Replace(Str,"’","”",1,-1,1)
End Function ‘*************************************
‘过滤特殊字符
‘*************************************
Function CheckStr(byVal ChkStr)
Dim Str:Str=ChkStr
Str=Trim(Str)
If IsNull(Str) Then
CheckStr = ""
Exit Function
End If
    Str = Replace(Str, "&", "&amp;")
    Str = Replace(Str,"’","&#39;")
    Str = Replace(Str,"""","&#34;")
Dim re
Set re=new RegExp
re.IgnoreCase =True
re.Global=True
re.Pattern="(w)(here)"
    Str = re.replace(Str,"$1h&#101;re")
re.Pattern="(s)(elect)"
    Str = re.replace(Str,"$1el&#101;ct")
re.Pattern="(i)(nsert)"
    Str = re.replace(Str,"$1ns&#101;rt")
re.Pattern="(c)(reate)"
    Str = re.replace(Str,"$1r&#101;ate")
re.Pattern="(d)(rop)"
    Str = re.replace(Str,"$1ro&#112;")
re.Pattern="(a)(lter)"
    Str = re.replace(Str,"$1lt&#101;r")
re.Pattern="(d)(elete)"
    Str = re.replace(Str,"$1el&#101;te")
re.Pattern="(u)(pdate)"
    Str = re.replace(Str,"$1p&#100;ate")
re.Pattern="(\s)(or)"
    Str = re.replace(Str,"$1o&#114;")
Set re=Nothing
CheckStr=Str
End Function’*************************************
‘恢复特殊字符
‘*************************************
Function UnCheckStr(ByVal Str)
If IsNull(Str) Then
UnCheckStr = ""
Exit Function
End If
     Str = Replace(Str,"&#39;","’")
        Str = Replace(Str,"&#34;","""")
Dim re
Set re=new RegExp
re.IgnoreCase =True
re.Global=True
re.Pattern="(w)(h&#101;re)"
     str = re.replace(str,"$1here")
re.Pattern="(s)(el&#101;ct)"
     str = re.replace(str,"$1elect")
re.Pattern="(i)(ns&#101;rt)"
     str = re.replace(str,"$1nsert")
re.Pattern="(c)(r&#101;ate)"
     str = re.replace(str,"$1reate")
re.Pattern="(d)(ro&#112;)"
     str = re.replace(str,"$1rop")
re.Pattern="(a)(lt&#101;r)"
     str = re.replace(str,"$1lter")
re.Pattern="(d)(el&#101;te)"
     str = re.replace(str,"$1elete")
re.Pattern="(u)(p&#100;ate)"
     str = re.replace(str,"$1pdate")
re.Pattern="(\s)(o&#114;)"
     Str = re.replace(Str,"$1or")
Set re=Nothing
        Str = Replace(Str, "&amp;", "&")
     UnCheckStr=Str
End Function’*************************************
‘获取客户端浏览器信息
‘*************************************
function getBrowser(strUA)
dim arrInfo,strType,temp1,temp2
strType=""
strUA=LCase(strUA)
arrInfo=Array("Unkown","Unkown")
‘浏览器判断
    if Instr(strUA,"mozilla")>0 then arrInfo(0)="Mozilla"
    if Instr(strUA,"icab")>0 then arrInfo(0)="iCab"
    if Instr(strUA,"lynx")>0 then arrInfo(0)="Lynx"
    if Instr(strUA,"links")>0 then arrInfo(0)="Links"
    if Instr(strUA,"elinks")>0 then arrInfo(0)="ELinks"
    if Instr(strUA,"jbrowser")>0 then arrInfo(0)="JBrowser"
    if Instr(strUA,"konqueror")>0 then arrInfo(0)="konqueror"
    if Instr(strUA,"wget")>0 then arrInfo(0)="wget"
    if Instr(strUA,"ask jeeves")>0 or Instr(strUA,"teoma")>0 then arrInfo(0)="Ask Jeeves/Teoma"
    if Instr(strUA,"wget")>0 then arrInfo(0)="wget"
    if Instr(strUA,"opera")>0 then arrInfo(0)="opera"    if Instr(strUA,"gecko")>0 then
      strType="[Gecko]"
      arrInfo(0)="Mozilla"
      if Instr(strUA,"aol")>0 then arrInfo(0)="AOL"
      if Instr(strUA,"netscape")>0 then arrInfo(0)="Netscape"
      if Instr(strUA,"firefox")>0 then arrInfo(0)="FireFox"
      if Instr(strUA,"chimera")>0 then arrInfo(0)="Chimera"
      if Instr(strUA,"camino")>0 then arrInfo(0)="Camino"
      if Instr(strUA,"galeon")>0 then arrInfo(0)="Galeon"
      if Instr(strUA,"k-meleon")>0 then arrInfo(0)="K-Meleon"
      arrInfo(0)=arrInfo(0)+strType
   end if
  
   if Instr(strUA,"bot")>0 or Instr(strUA,"crawl")>0 then
      strType="[Bot/Crawler]"
      arrInfo(0)=""
      if Instr(strUA,"grub")>0 then arrInfo(0)="Grub"
      if Instr(strUA,"googlebot")>0 then arrInfo(0)="GoogleBot"
      if Instr(strUA,"msnbot")>0 then arrInfo(0)="MSN Bot"
      if Instr(strUA,"slurp")>0 then arrInfo(0)="Yahoo! Slurp"
      arrInfo(0)=arrInfo(0)+strType
end if

if Instr(strUA,"applewebkit")>0 then
      strType="[AppleWebKit]"
      arrInfo(0)=""
      if Instr(strUA,"omniweb")>0 then arrInfo(0)="OmniWeb"
      if Instr(strUA,"safari")>0 then arrInfo(0)="Safari"
      arrInfo(0)=arrInfo(0)+strType
end if

if Instr(strUA,"msie")>0 then
      strType="[MSIE"
      temp1=mid(strUA,(Instr(strUA,"msie")+4),6)
      temp2=Instr(temp1,";")
      temp1=left(temp1,temp2-1)
      strType=strType & temp1 &"]"
      arrInfo(0)="Internet Explorer"
      if Instr(strUA,"msn")>0 then arrInfo(0)="MSN"
      if Instr(strUA,"aol")>0 then arrInfo(0)="AOL"
      if Instr(strUA,"webtv")>0 then arrInfo(0)="WebTV"
      if Instr(strUA,"myie2")>0 then arrInfo(0)="MyIE2"
      if Instr(strUA,"maxthon")>0 then arrInfo(0)="Maxthon"
      if Instr(strUA,"gosurf")>0 then arrInfo(0)="GoSurf"
      if Instr(strUA,"netcaptor")>0 then arrInfo(0)="NetCaptor"
      if Instr(strUA,"sleipnir")>0 then arrInfo(0)="Sleipnir"
      if Instr(strUA,"avant browser")>0 then arrInfo(0)="AvantBrowser"
      if Instr(strUA,"greenbrowser")>0 then arrInfo(0)="GreenBrowser"
      if Instr(strUA,"slimbrowser")>0 then arrInfo(0)="SlimBrowser"
      arrInfo(0)=arrInfo(0)+strType
   end if

‘操作系统判断
    if Instr(strUA,"windows")>0 then arrInfo(1)="Windows"
    if Instr(strUA,"windows ce")>0 then arrInfo(1)="Windows CE"
    if Instr(strUA,"windows 95")>0 then arrInfo(1)="Windows 95"
    if Instr(strUA,"win98")>0 then arrInfo(1)="Windows 98"
    if Instr(strUA,"windows 98")>0 then arrInfo(1)="Windows 98"
    if Instr(strUA,"windows 2000")>0 then arrInfo(1)="Windows 2000"
    if Instr(strUA,"windows xp")>0 then arrInfo(1)="Windows XP"    if Instr(strUA,"windows nt")>0 then
      arrInfo(1)="Windows NT"
      if Instr(strUA,"windows nt 5.0")>0 then arrInfo(1)="Windows 2000"
      if Instr(strUA,"windows nt 5.1")>0 then arrInfo(1)="Windows XP"
      if Instr(strUA,"windows nt 5.2")>0 then arrInfo(1)="Windows 2003"
    end if
    if Instr(strUA,"x11")>0 or Instr(strUA,"unix")>0 then arrInfo(1)="Unix"
    if Instr(strUA,"sunos")>0 or Instr(strUA,"sun os")>0 then arrInfo(1)="SUN OS"
    if Instr(strUA,"powerpc")>0 or Instr(strUA,"ppc")>0 then arrInfo(1)="PowerPC"
    if Instr(strUA,"macintosh")>0 then arrInfo(1)="Mac"
    if Instr(strUA,"mac osx")>0 then arrInfo(1)="MacOSX"
    if Instr(strUA,"freebsd")>0 then arrInfo(1)="FreeBSD"
    if Instr(strUA,"linux")>0 then arrInfo(1)="Linux"
    if Instr(strUA,"palmsource")>0 or Instr(strUA,"palmos")>0 then arrInfo(1)="PalmOS"
    if Instr(strUA,"wap ")>0 then arrInfo(1)="WAP"

‘arrInfo(0)=strUA
getBrowser=arrInfo
end function’*************************************
‘获取客户端IP
‘*************************************
function getIP()
   dim strIP,IP_Ary,strIP_list
   strIP_list=Replace(Request.ServerVariables("HTTP_X_FORWARDED_FOR"),"’","")
  
   If InStr(strIP_list,",")<>0 Then
   IP_Ary = Split(strIP_list,",")
   strIP = IP_Ary(0)
   Else
   strIP = strIP_list
   End IF
  
   If strIP=Empty Then strIP=Replace(Request.ServerVariables("REMOTE_ADDR"),"’","")
   getIP=strIP
End Function’*************************************
‘图片添加水印函数
‘*************************************
sub setWatermark(picFile,stampFile)
on error resume next
if CheckObjInstalled("Persits.Jpeg")=true then
Set stamp = Server.CreateObject("Persits.Jpeg")
stampFile = Server.MapPath(stampFile)
stamp.Open stampFile
Set Photo = Server.CreateObject("Persits.Jpeg")
picFile = Server.MapPath(picFile)
Photo.Open picFile
wh=Photo.width/2-stamp.Width/2
ht=Photo.height/2-stamp.Height/2
Photo.DrawImage wh,1,stamp,0.2,&HFFFFFF
Photo.Save picFile
set stamp=nothing
set Photo=nothing
else
response.Write "服务器不支持Persits.Jpeg组件,水印添加失败。同时,可能导致本网站很多主要功能不能使用,请为服务器安装Persits.Jpeg组件。"
exit sub
end if
end sub’*************************************
‘制作图片缩略图函数
‘*************************************
sub createMiniPic(picFile,miniFile,miniWidth,miniHeight)
on error resume next
if CheckObjInstalled("Persits.Jpeg")=true then
Response.Expires = 0
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.Open(server.mappath(picFile))
‘orgWidth=Jpeg.OriginalWidth
‘orgheight=Jpeg.OriginalHeight
‘scale=orgWidth/orgheight
‘width=miniHeight*scale
‘if width>miniWidth then width=miniWidth
Jpeg.Width = miniWidth
Jpeg.Height = miniHeight
Jpeg.Save server.mappath(miniFile)
set Jpeg=nothing
else
response.Write "服务器不支持Persits.Jpeg组件,水印添加失败。同时,可能导致本网站很多主要功能不能使用,请为服务器安装Persits.Jpeg组件。"
exit sub
end if
end sub
‘*************************************
‘***二进制数据转化为字符串函数
‘*************************************
Function Bytes2bStr(vin)
if lenb(vin) =0 then
Bytes2bStr = ""
exit function
end if
”二进制转换为字符串
Dim BytesStream,StringReturn
set BytesStream = Server.CreateObject("ADODB.Stream")
BytesStream.Type = 2
BytesStream.Open
BytesStream.WriteText vin
BytesStream.Position = 0
BytesStream.Charset = "gb2312"
BytesStream.Position = 2
StringReturn = BytesStream.ReadText
BytesStream.close
set BytesStream = Nothing
Bytes2bStr = StringReturn
End Function’*************************************
‘***enctype="multipart/form-data"的表
‘单数据的文本数据提取函数
‘*************************************
Function Myrequest(fldname)
”取表单数据,支持对同名表单域的读取
dim i,fldHead,tmpvalue
for i = 0 to loopcnt-1
fldHead = fldInfo(i,0)
if instr(lcase(fldHead),lcase(fldname))>0 then
   ”表单在数组中,判断该表单域内容
   tmpvalue = FldInfo(i,1)
   if instr(fldHead,"filename=""")<1 then
    Tmpvalue = Bytes2bStr(tmpvalue)
    if myrequest <> "" then
     myrequest = myrequest & "," &tmpvalue
    else
     MyRequest = tmpvalue
    end if   
   else
    myrequest = tmpvalue
   end if   
end if
next
End function’*************************************
‘***获取上传表单原上传文件文件名
‘*************************************
Function GetFileName(fldName)
”都取原上传文件文件名
dim i,fldHead,fnpos
for i = 0 to loopcnt-1
fldHead = lcase(fldInfo(i,0))
if instr(fldHead,lcase(fldName)) > 0 then
   fnpos = instr(fldHead,"filename=""")
   if fnpos < 1 then exit for
   fldHead = mid(fldHead,fnpos+10)
   ”表单内容
   GetFileName = mid(fldHead,1,instr(fldHead,"""")-1)
   GetfileName = mid(GetFileName,instrRev(GetFileName,"\")+1)
end if
next
End function’*************************************
‘获取上传表单原上传文件的类型,限定读
‘取文件域的内容
‘*************************************
Function GetContentType(fldName)
dim i
dim fldHead,cpos
for i = 0 to loopcnt – 1
fldHead = lcase(fldInfo(i,0))
if instr(fldHead,lcase(fldName)) > 0 and instr(fldHead,"filename=""") >0 then
   cpos = instr(fldHead,"content-type: ")
   GetContentType = mid(fldHead,cpos+14)
end if
next
End function’*************************************
‘***获取上传表单原上传文件扩展名
‘*************************************
Function GetFileTypeName(Fldname)
If instr(Fldname,".") > 0 Then
GetFileTypeName = right(Fldname,3)
End If
End Function’*************************************
‘***’限制上传文件类型
‘*************************************
Function IsvalidFile(FileType)
If instr(PicType,FileType)=0 then
IsvalidFile = false
Else
IsvalidFile = true
End if
End Function
‘————————————————
‘FilterJS(strHTML)
‘过滤脚本
‘————————————————
Function FilterJS(byval strHTML)
Dim objReg,strContent
If IsNull(strHTML) OR strHTML="" Then Exit Function
  
Set objReg=New RegExp
objReg.IgnoreCase =True
objReg.Global=True
objReg.Pattern="(&#)"
strContent=objReg.Replace(strHTML,"")
objReg.Pattern="(function|meta|value|window\.|script|js:|about:|file:|Document\.|vbs:|frame|cookie)"
strContent=objReg.Replace(strContent,"")
objReg.Pattern="(on(finish|mouse|Exit=|error|click|key|load|focus|Blur))"
strContent=objReg.Replace(strContent,"")
FilterJS=strContent
strContent=""
Set objReg=Nothing
End Function’————————————————
‘CheckInt(byval strNumber)
‘检查并转换整形值
‘————————————————
Function CheckInt(byval strNumber)
If isNull(strNumber) OR Not IsNumeric(strNumber) Then
CheckInt=""
Else
CheckInt=CLNG(strNumber)
End If
End Function’获取访问者IP
Function GetIP()    Dim strIPAddr
    If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then
        strIPAddr = Request.ServerVariables("REMOTE_ADDR")
    ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then
        strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)
    ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then
        strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1)
    Else
        strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
    End If
    GetIP = ProtectSQL(Trim(Mid(strIPAddr, 1, 30)))
End Function
%>

赞(0)
未经允许不得转载:小叶白龙博客 » ASP常用函数的10经典大收集
分享到: 更多 (0)

评论 4445

评论前必须登录!