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

ASP
对连串英文自动换行的解决方法 IE5.5
怎样写你自己的EMAIL组件(原理)
ASP中有关timeout超时的体会
用ASP实现从SQL Server导出数据到Access
ASP向NT域中加一个用户
ASP乱码的解决方法
关于 aspsmartupload 注册问题
利用XML不离开页面刷新数据
IIS 处理 SEARCH 请求漏洞
不用组件实现上载功能(1)
不用组件实现上载功能(2)
在网页中实现OICQ里的头像选择的下拉框
仅用xsl和asp实现分页功能
如何使用context()方法将数据置入表格(XML)
利用ASP从远程服务器上接收XML数据
将数据库里面的内容生成EXCEL
怎样在ASP里面创建统计图表
加密你的Access数据库
利用global.asp定时执行ASP
加密QueryString数据

做网页时常用的ASP函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 118 ::
收藏到网摘: 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