当前位置: 首页 > 图文教程 > 网络编程 > ASP > 做网页时常用的ASP函数

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

做网页时常用的ASP函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 252 ::
收藏到网摘: n/a

'----------------------------------------------------------------------
' 函数功能: 屏蔽HTML代码
' 参  数: StrInput 用户输入信息
'----------------------------------------------------------------------
function FunInput(StrInput)
if not isnull(Str) then
  StrInput=RePlace(StrInput,"<","<")
  StrInput=replace(StrInput,">",">")
  StrinPut=replace(Strinput,chr(32)," ")
  strinput=replace(strinput,chr(34),""")
  strinput=replace(strinput,chr(39),"'")
  strinput=replace(strinput,chr(13),"")
  FunInput=strinput
end if
end function
 
'----------------------------------------------------------------------
' 函数功能: 防止SQL注入
' 参  数: StrValue 用户提交的数据
'    BloType  数据类型
'   参 数 值:   true 数值型数据
'               false 字符型数据
'----------------------------------------------------------------------
function FunSQL(StrValue,BloType)
if BloType then
  if Isnumeric(StrValue) then
   FunSQL=clng(StrValue)
  else
   StrValue=0
  end if
else
  if not isnull(StrValue) then
   StrValue=lcase(StrValue)
   StrValue=Replace(StrValue,"'","''")
   StrValue=replace(StrValue,"select","")
   StrValue=replace(StrValue,"update","")
   StrValue=replace(StrValue,"insert","")
   StrValue=replace(StrValue,"delete","")
   StrValue=replace(StrValue,";","")
   StrValue=replace(StrValue," ","")
   StrValue=replace(StrValue,chr(255),"")
   StrValue=replace(StrValue,"*","")
   StrValue=replace(StrValue,"%","")
  end if
end if
FunSQL=StrValue
end function
 
'--------------------------------------------------------------------------
' 函数功能: 常用类型转换
' 参    数:   _Type 数据类型
'    _Value  数据
' 参 数 值:   _Type  1 :  转换成数值型数据
'               _Type  2 :  转换成字符型数据
'               _Type  3 :  转换成布尔型数据   
'--------------------------------------------------------------------------
function FunSwitch(Value_,Type_)
on error resume next
select case Type_
  case 1
  if isnumeric(Value_) then
   if not isnull(Value_) then
    FunSwitch=clng(Value_)
   else
    FunSwitch=0
   end if
  else
   FunSwitch=0
  end if
  case 2
   if not isnull(Value_) then
    FunSwitch=cstr(Value_)
   else
    FunSwitch=""
   end if
  case 3
   if not isnull(Value_) and isnumeric(Value_) then
    FunSwitch=cbool(Value_)
   else
    FunSwitch=false
   end if
  case else
   response.redirect("Error.asp?err=请指定 FunSwitch 中要转达换成的数据类型!")
end select
if err.number<>0 then
response.redirect("Error.asp?err=数据转换时产生未知错误!")
err.clear
end if
end function
''----------------------------------------------------------------------
' 函数功能: 验证是数据是否来自外部
' 参    数:  无
'----------------------------------------------------------------------
function checkfrom()
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(server_v1,8,len(server_v2))<>server_v2 then
  checkfrom=true
else
  checkfrom=false
end if
end function
 
''----------------------------------------------------------------------
' 函数功能: JS提示框
' 参    数:  StrURL   :  点击确定后返回到的页面地址
'    StrMSG   :  对话框的提示信息

'----------------------------------------------------------------------
Function FunMsg(StrURL,StrMSG)
Response.write "<script language='javascript'>"&_
  Vbcrlf&"alert("""&StrMSG&""");"&_
  Vbcrlf&"window.location="""&StrURL&""";"&_
  Vbcrlf&"</script>"
End Function

'--------------------------------------------------------------------------
' 函数功能: 通用分页
' 参    数:   Intpagecount 总页数
'    Intmypage  当前页数
'    Intrecordcount  记录总数
'    Intpagesize 每页显示的记录数 
'--------------------------------------------------------------------------
function funpage(Intpagecount,Intmypage,Intrecordcount,Intpagesize)
  'on error resume next
  dim Intfor,Intlist,intlist_b
  Dim query, a, x, temp
    action = "http://" & Request.ServerVariables("HTTP_HOST") & Request.ServerVariables("SCRIPT_NAME")
    query = Split(Request.ServerVariables("QUERY_STRING"), "&")
    For Each x In query
     a = Split(x, "=")
     If StrComp(a(0), "page", vbTextCompare) <> 0 Then
     temp = temp & a(0) & "=" & a(1) & "&"
     End If
    Next 
  if intmypage>1 then
   funpage=funpage & "<a href='"&action&"?"&temp&"page=1' title='最前页' class='no'><font face='Webdings'>9</font></a>"
   funpage=funpage&"<a href='"&action&"?"&temp&"page="&Intmypage-1 & "' title='上一页' class='no'><font face='Webdings'>7</font></a>"
  else
   funpage=funpage &"<font face='Webdings'>9</font>"
    funpage=funpage&"<font face='Webdings'>7</font>"
  end if
  if Intlist<>0 then
   if cintmypage= Intlist then
   Intlist=Intlist+5 
   end if
   else
    Intlist=Intmypage+5
   end if
   if intlist-9<1 then
      intlist_b=1
   else
     intlist_b=intlist-9
   end if 
   for Intfor=intlist_b to Intlist         
    if intfor<=Intpagecount then             
     if intfor=Intmypage then       '-------使当前页文字为红色,并不可点击
     funpage =funpage & strMode&" <font color='#FF0000'><b>"& Intfor & "</b></font>"
    else
     funpage=funpage & strMode &" <a href='"&action&"?"&temp&"page=" & Intfor &"' class='no'>" & Intfor & "</a>"
    end if
   end if
   strMode=" <font color='#BBBBBB'>|</font> "
   next
   if intmypage<intpagecount then
    funpage=funpage&" <a href='"&action&"?"&temp&"page="& Intmypage+1 &"' title='后一页' class='no'><font face='Webdings'>8</font></a>"
     funpage=funpage &"<a href='"&action&"?"&temp&"page="& Intpagecount & "' title='最后页' class='no'><font face='Webdings'>:</font></a>"
   else
    funpage=funpage&" <font face='Webdings'>8</font>"
     funpage=funpage &"<font face='Webdings'>:</font></a>"
   end if
   funpage="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr>"&_
    vbcrlf&"<td width='40%' style=font:14px> 当前第"&Intmypage&"页  "&Intpagesize&"条/页  共"&Intpagecount&"页/"&Intrecordcount&"条记录</td>"&_
    vbcrlf&"<td width='60%' align='right'>"&_
    vbcrlf&"<table width='360' border='0' cellspacing='0' cellpadding='0'><tr>"&_
    vbcrlf&"<td align='right' style=font:14px>"&funpage&" </td>"&_
     vbcrlf&"</tr></table></td></tr>"&_
     vbcrlf&"</table>"
  if err.number<>0 then
  err.clear
response.redirect("error.asp?err=分页函数出错,请与管理员联系!|")
  end if
end function
'***************************************************
'函数名:Highlight
'功能:搜索的关键词以高亮的颜色显示
'参数strText是要被高亮显示的字符串或变量所在的字串或变量
'strFind是要被高亮显示的字符串或变量,
'strBefore被高亮显示的HTML代码前缀如:<font color=red>
'strAfter被高亮显示的HTML代码的后缀:</font>
'*****************************************************
Function Highlight(strText, strFind, strBefore, strAfter)
Dim nPos
Dim nLen
Dim nLenAll

nLen = Len(strFind)
nLenAll = nLen + Len(strBefore) + Len(strAfter) + 1
Highlight = strText
If nLen > 0 And Len(Highlight) > 0 Then
nPos = InStr(1, Highlight, strFind, 1)
Do While nPos > 0
Highlight = Left(Highlight, nPos - 1) & _
strBefore & Mid(Highlight, nPos, nLen) & strAfter & _
Mid(Highlight, nPos + nLen)
nPos = InStr(nPos + nLenAll, Highlight, strFind, 1)
Loop
End If
End Function