- <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
- <%
- StartTime=timer() '程序执行时间检测
- '###############################################################
- '┌──VIBO───────────────────┐
- '│ VIBO STUDIO 版权所有 │
- '└───────────────────────┘
- ' Author:Vibo
- ' Email:vibo_cn@hotmail.com
- '----------------- Vibo ASP站点开发常用函数库 ------------------
- 'OpenDB(vdata_url) -------------------- 打开数据库
- 'getIp() ------------------------------- 得到真实IP
- 'getIPAdress(sip)------------------------ 查找ip对应的真实地址
- 'IP2Num(sip) ---------------------------- 限制某段IP地址
- 'chkFrom() ------------------------------ 防站外提交设定
- 'getsys() ------------------------------- 操作系统检测
- 'GetBrowser() --------------------------- 浏览器版本检测
- 'GetSearcher() -------------------------- 识别搜索引擎
- '
- '---------------------- 数据过滤 ↓----------------------------
- 'CheckStr(byVal ChkStr) ----------------- 检查无效字符
- 'CheckSql() ----------------------------- 防止SQL注入
- 'UnCheckStr(Str)------------------------- 检查非法sql命令
- 'Checkstr(Str) -------------------------- ASP最新SQL防注入过滤涵数
- 'HTMLEncode(reString) ------------------- 过滤转换HTML代码
- 'DateToStr(DateTime,ShowType) ----------- 日期转换函数
- 'Date2Chinese(iDate) -------------------- 获得ASP的中文日期字符串
- 'lenStr(str) ---------------------------- 计算字符串长度(字节)
- 'CreateArr(str) ------------------------- 生成二维数组
- 'ShowRsArr(rsArr) ----------------------- 用表格显示记录集getrows生成的数组的表结构
- '---------------------- 外接组件使用函数↓------------------------
- 'sendMail(to_Email,from_Email,from_Name,mail_Subject,mail_Body,mail_htmlBody) -----'Jmail组件 发送邮件
- '-----------------------------------------系统检测函数↓------------------------------------------
- 'IsValidUrl(url) ------------------------ 检测网页是否有效
- 'getHTMLPage(filename) ------------------ 获取文件内容
- 'CheckFile(FilePath) -------------------- 检查某一文件是否存在
- 'CheckDir(FolderPath) ------------------- 检查某一目录是否存在
- 'MakeNewsDir(foldername) ---------------- 根据指定名称生成目录
- 'CreateHTMLPage(filename,FileData,C_mode) 生成文件
- 'CheckBadWord(byVal ChkStr) ------------- 过滤脏字
- '###############################################################
- Dim ipData_url
- ipData_url="./Ip.mdb"
- Response.Write("--------------客户端信息检测------------"&"<br>")
- Response.Write(getsys()&"<br>")
- Response.Write(GetBrowser()&"<br>")
- Response.Write(GetSearcher()&"<br>")
- Response.Write("IP:"&getIp()&"<br>")
- Response.Write("来源:"&(getIPAdress(GetIp()))&"<br>")
- Response.Write("<br>")
- Response.Write("--------------数据提交检测--------------"&"<br>")
- if not chkFrom then
- Response.write("请不要从站外提交内容!"&"<br>")
- Response.end
- else
- Response.write("本站提交内容!"&"<br><br>")
- End if
- function OpenDB(vdata_url)
- '------------------------------打开数据库
- '使用:Conn = OpenDB("data/data.mdb")
- Dim vibo_Conn
- Set vibo_Conn= Server.CreateObject("ADODB.Connection")
- vibo_Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(vdata_url)
- vibo_Conn.Open
- OpenDB=vibo_Conn
- End Function
- function getIp()
- '-----------------------得到真实IP
- userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
- If userip = "" Then userip = Request.ServerVariables("REMOTE_ADDR")
- getIp=userip
- End function
- Function getIPAdress(sip)
- '---------------------查找ip对应的真实地址
- Dim iparr,iprs,country,city
- If sip="127.0.0.1" then sip= "192.168.0.1"
- iparr=split(sip,".")
- sip=cint(iparr(0))*256*256*256+cint(iparr(1))*256*256+cint(iparr(2))*256+cint(iparr(3))-1
- Dim vibo_ipconn_STRING
- vibo_ipconn_STRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(ipData_url)
- Set iprs = Server.CreateObject("ADODB.Recordset")
- iprs.ActiveConnection = vibo_ipconn_STRING
- iprs.Source = "Select Top 1 city, country FROM address Where ip1 <=" & sip & " and " & sip & "<=ip2"
- iprs.CursorType = 0
- iprs.CursorLocation = 2
- iprs.LockType = 1
- iprs.Open()
- If iprs.bof and iprs.eof then
- country="未知地区"
- city=""
- Else
- country=iprs.Fields.Item("country").Value
- city=iprs.Fields.Item("city").Value
- End If
- getIPAdress=country&city
- iprs.Close()
- Set iprs = Nothing
- End Function
- Function IP2Num(sip)
- '--------------------限制某段IP地址
- dim str1,str2,str3,str4
- dim num
- IP2Num=0
- if isnumeric(left(sip,2)) then
- str1=left(sip,instr(sip,".")-1)
- sip=mid(sip,instr(sip,".")+1)
- str2=left(sip,instr(sip,".")-1)
- sip=mid(sip,instr(sip,".")+1)
- str3=left(sip,instr(sip,".")-1)
- str4=mid(sip,instr(sip,".")+1)
- num=cint(str1)*256*256*256+cint(str2)*256*256+cint(str3)*256+cint(str4)-1
- IP2Num = num
- end if
- end function
- 'userIPnum = IP2Num(Request.ServerVariables("REMOTE_ADDR"))
- 'if userIPnum > IP2Num("192.168.0.0") and userIPnum < IP2Num("192.168.0.255") then
- 'response.write ("<center>您的IP被禁止</center>")
- 'response.end
- 'end if
- Function chkFrom()
- '----------------------------防站外提交设定
- Dim server_v1,server_v2, server1, server2
- chkFrom=False
- server1=Cstr(Request.ServerVariables("HTTP_REFERER"))
- server2=Cstr(Request.ServerVariables("SERVER_NAME"))
- If Mid(server1,8,len(server2))=server2 Then chkFrom=True
- End Function
- 'if not chkFrom then
- 'Response.write("请不要从站外提交内容!")
- 'Response.end
- 'End if
- function getsys()
- '----------------------------------操作系统检测
- vibo_soft=Request.ServerVariables("HTTP_USER_AGENT")
- if instr(vibo_soft,"Windows NT 5.0") then
- msm="Win 2000"
- elseif instr(vibo_soft,"Windows NT 5.1") then
- msm="Win XP"
- elseif instr(vibo_soft,"Windows NT 5.2") then
- msm="Win 2003"
- elseif instr(vibo_soft,"4.0") then
- msm="Win NT"
- elseif instr(vibo_soft,"NT") then
- msm="Win NT"
- elseif instr(vibo_soft,"Windows CE") then
- msm="Windows CE"
- elseif instr(vibo_soft,"Windows 9") then
- msm="Win 9x"
- elseif instr(vibo_soft,"9x") then
- msm="Windows ME"
- elseif instr(vibo_soft,"98") then
- msm="Windows 98"
- elseif instr(vibo_soft,"Windows 95") then
- msm="Windows 95"
- elseif instr(vibo_soft,"Win32") then
- msm="Win32"
- elseif instr(vibo_soft,"unix") or instr(vibo_soft,"linux") or instr(vibo_soft,"SunOS") or instr(vibo_soft,"BSD") then
- msm="类Unix"
- elseif instr(vibo_soft,"Mac") then
- msm="Mac"
- else
- msm="Other"
- end if
- getsys=msm
- End Function
- function GetBrowser()
- '----------------------------------浏览器版本检测
- dim vibo_soft
- vibo_soft=Request.ServerVariables("HTTP_USER_AGENT")
- Browser="unknown"
- version="unknown"
- 'vibo_soft="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; TencentTraveler ; .NET CLR 1.1.4322)"
- If Left(vibo_soft,7) ="Mozilla" Then '有此标识为浏览器
- vibo_soft=Split(vibo_soft,";")
- If InStr(vibo_soft(1),"MSIE")>0 Then
- Browser="Microsoft Internet Explorer "
- version=Trim(Left(Replace(vibo_soft(1),"MSIE",""),6))
- ElseIf InStr(vibo_soft(4),"Netscape")>0 Then
- Browser="Netscape "
- tmpstr=Split(vibo_soft(4),"/")
- version=tmpstr(UBound(tmpstr))
- ElseIf InStr(vibo_soft(4),"rv:")>0 Then
- Browser="Mozilla "
- tmpstr=Split(vibo_soft(4),":")
- version=tmpstr(UBound(tmpstr))
- If InStr(version,")") > 0 Then
- tmpstr=Split(version,")")
- version=tmpstr(0)
- End If
- End If
- ElseIf Left(vibo_soft,5) ="Opera" Then
- vibo_soft=Split(vibo_soft,"/")
- Browser="Mozilla "
- tmpstr=Split(vibo_soft(1)," ")
- version=tmpstr(0)
- End If
- If version<>"unknown" Then
- Dim Tmpstr1
- Tmpstr1=Trim(Replace(version,".",""))
- If Not IsNumeric(Tmpstr1) Then
- version="unknown"
- End If
- End If
- GetBrowser=Browser &" "& version
- End function
- function GetSearcher()
- '----------------------识别搜索引擎
- Dim botlist,Searcher
- Dim vibo_soft
- vibo_soft=Request.ServerVariables("HTTP_USER_AGENT")
- Botlist="Google,Isaac,SurveyBot,Baiduspider,ia_archiver,P.Arthur,FAST-WebCrawler,Java,Microsoft-ATL-Native,TurnitinBot,WebGather,Sleipnir,TencentTraveler"
- Botlist=split(Botlist,",")
- For i=0 to UBound(Botlist)
- If InStr(vibo_soft,Botlist(i))>0 Then
- Searcher=Botlist(i)&" 搜索器"
- IsSearch=True
- Exit For
- End If
- Next
- If IsSearch Then
- GetSearcher=Searcher
- else
- GetSearcher="unknown"
- End if
- End function
- '----------------------------------数据过滤 ↓---------------------------------------
- Function CheckSql() '防止SQL注入
- Dim sql_injdata
- SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
- SQL_inj = split(SQL_Injdata,"|")
- If Request.QueryString<>"" Then
- For Each SQL_Get In Request.QueryString
- For SQL_Data=0 To Ubound(SQL_inj)
- if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then
- Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!');history.back(-1)}< /Script>"
- Response.end
- end if
- next
- Next
- End If
- If Request.Form<>"" Then
- For Each Sql_Post In Request.Form
- For SQL_Data=0 To Ubound(SQL_inj)
- if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then
- Response.Write "<Script Language='javascript'>{alert('请不要在参数中包含非法字符!');history.back(-1)} </Script>"
- Response.end
- end if
- next
- next
- end if
- End Function
- Function CheckStr(byVal ChkStr) '检查无效字符
- Dim Str:Str=ChkStr
- Str=Trim(Str)
- If IsNull(Str) Then
- CheckStr = ""
- Exit Function
- End If
- Dim re
- Set re=new RegExp
- re.IgnoreCase =True
- re.Global=True
- re.Pattern="(\r\n){3,}"
- Str=re.Replace(Str,"$1$1$1")
- Set re=Nothing
- Str = Replace(Str,"'","''")
- Str = Replace(Str, "select", "select")
- Str = Replace(Str, "join", "join")
- Str = Replace(Str, "union", "union")
- Str = Replace(Str, "where", "where")
- Str = Replace(Str, "insert", "insert")
- Str = Replace(Str, "delete", "delete")
- Str = Replace(Str, "update", "update")
- Str = Replace(Str, "like", "like")
- Str = Replace(Str, "drop", "drop")
- Str = Replace(Str, "create", "create")
- Str = Replace(Str, "modify", "modify")
- Str = Replace(Str, "rename", "rename")
- Str = Replace(Str, "alter", "alter")
- Str = Replace(Str, "cast", "cast")
- CheckStr=Str
- End Function
- Function UnCheckStr(Str) '检查非法sql命令
- Str = Replace(Str, "select", "select")
- Str = Replace(Str, "join", "join")
- Str = Replace(Str, "union", "union")
- Str = Replace(Str, "where", "where")
- Str = Replace(Str, "insert", "insert")
- Str = Replace(Str, "delete", "delete")
- Str = Replace(Str, "update", "update")
- Str = Replace(Str, "like", "like")
- Str = Replace(Str, "drop", "drop")
- Str = Replace(Str, "create", "create")
- Str = Replace(Str, "modify", "modify")
- Str = Replace(Str, "rename", "rename")
- Str = Replace(Str, "alter", "alter")
- Str = Replace(Str, "cast", "cast")
- UnCheckStr=Str
- End Function
- Function Checkstr(Str) 'SQL防注入过滤涵数
- If Isnull(Str) Then
- CheckStr = ""
- Exit Function
- End If
- Str = Replace(Str,Chr(0),"", 1, -1, 1)
- Str = Replace(Str, """", """", 1, -1, 1)
- Str = Replace(Str,"<","<", 1, -1, 1)
- Str = Replace(Str,">",">", 1, -1, 1)
- Str = Replace(Str, "script", "script", 1, -1, 0)
- Str = Replace(Str, "SCRIPT", "SCRIPT", 1, -1, 0)
- Str = Replace(Str, "Script", "Script", 1, -1, 0)
- Str = Replace(Str, "script", "Script", 1, -1, 1)
- Str = Replace(Str, "object", "object", 1, -1, 0)
- Str = Replace(Str, "OBJECT", "OBJECT", 1, -1, 0)
- Str = Replace(Str, "Object", "Object", 1, -1, 0)
- Str = Replace(Str, "object", "Object", 1, -1, 1)
- Str = Replace(Str, "applet", "applet", 1, -1, 0)
- Str = Replace(Str, "APPLET", "APPLET", 1, -1, 0)
- Str = Replace(Str, "Applet", "Applet", 1, -1, 0)
- Str = Replace(Str, "applet", "Applet", 1, -1, 1)
- Str = Replace(Str, "[", "[")
- Str = Replace(Str, "]", "]")
- Str = Replace(Str, """", "", 1, -1, 1)
- Str = Replace(Str, "=", "=", 1, -1, 1)
- Str = Replace(Str, "'", "''", 1, -1, 1)
- Str = Replace(Str, "select", "select", 1, -1, 1)
- Str = Replace(Str, "execute", "execute", 1, -1, 1)
- Str = Replace(Str, "exec", "exec", 1, -1, 1)
- Str = Replace(Str, "join", "join", 1, -1, 1)
- Str = Replace(Str, "union", "union", 1, -1, 1)
- Str = Replace(Str, "where", "where", 1, -1, 1)
- Str = Replace(Str, "insert", "insert", 1, -1, 1)
- Str = Replace(Str, "delete", "delete", 1, -1, 1)
- Str = Replace(Str, "update", "update", 1, -1, 1)
- Str = Replace(Str, "like", "like", 1, -1, 1)
- Str = Replace(Str, "drop", "drop", 1, -1, 1)
- Str = Replace(Str, "create", "create", 1, -1, 1)
- Str = Replace(Str, "rename", "rename", 1, -1, 1)
- Str = Replace(Str, "count", "count", 1, -1, 1)
- Str = Replace(Str, "chr", "chr", 1, -1, 1)
- Str = Replace(Str, "mid", "mid", 1, -1, 1)
- Str = Replace(Str, "truncate", "truncate", 1, -1, 1)
- Str = Replace(Str, "nchar", "nchar", 1, -1, 1)
- Str = Replace(Str, "char", "char", 1, -1, 1)
- Str = Replace(Str, "alter", "alter", 1, -1, 1)
- Str = Replace(Str, "cast", "cast", 1, -1, 1)
- Str = Replace(Str, "exists", "exists", 1, -1, 1)
- Str = Replace(Str,Chr(13),"<br>", 1, -1, 1)
- CheckStr = Replace(Str,"'","''", 1, -1, 1)
- End Function
- Function HTMLEncode(reString) '过滤转换HTML代码
- Dim Str:Str=reString
- If Not IsNull(Str) Then
- Str = UnCheckStr(Str)
- Str = Replace(Str, "&", "&")
- Str = Replace(Str, ">", ">")
- Str = Replace(Str, "<", "<")
- Str = Replace(Str, CHR(32), " ")
- Str = Replace(Str, CHR(9), " ")
- Str = Replace(Str, CHR(9), " ")
- Str = Replace(Str, CHR(34),""")
- Str = Replace(Str, CHR(39),"'")
- Str = Replace(Str, CHR(13), "")
- Str = Replace(Str, CHR(10), "<br>")
- HTMLEncode = Str
- End If
- End Function
- Function DateToStr(DateTime,ShowType) '日期转换函数
- Dim DateMonth,DateDay,DateHour,DateMinute
- DateMonth=Month(DateTime)
- DateDay=Day(DateTime)
- DateHour=Hour(DateTime)
- DateMinute=Minute(DateTime)
- If Len(DateMonth)<2 Then DateMonth="0"&DateMonth
- If Len(DateDay)<2 Then DateDay="0"&DateDay
- Select Case ShowType
- Case "Y-m-d"
- DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay
- Case "Y-m-d H:I A"
- Dim DateAMPM
- If DateHour>12 Then
- DateHour=DateHour-12
- DateAMPM="PM"
- Else
- DateHour=DateHour
- DateAMPM="AM"
- End If
- If Len(DateHour)<2 Then DateHour="0"&DateHour
- If Len(DateMinute)<2 Then DateMinute="0"&DateMinute
- DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute&" "&DateAMPM
- Case "Y-m-d H:I:S"
- Dim DateSecond
- DateSecond=Second(DateTime)
- If Len(DateHour)<2 Then DateHour="0"&DateHour
- If Len(DateMinute)<2 Then DateMinute="0"&DateMinute
- If Len(DateSecond)<2 Then DateSecond="0"&DateSecond
- DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute&":"&DateSecond
- Case "YmdHIS"
- DateSecond=Second(DateTime)
- If Len(DateHour)<2 Then DateHour="0"&DateHour
- If Len(DateMinute)<2 Then DateMinute="0"&DateMinute
- If Len(DateSecond)<2 Then DateSecond="0"&DateSecond
- DateToStr=Year(DateTime)&DateMonth&DateDay&DateHour&DateMinute&DateSecond
- Case "ym"
- DateToStr=Right(Year(DateTime),2)&DateMonth
- Case "d"
- DateToStr=DateDay
- Case Else
- If Len(DateHour)<2 Then DateHour="0"&DateHour
- If Len(DateMinute)<2 Then DateMinute="0"&DateMinute
- DateToStr=Year(DateTime)&"-"&DateMonth&"-"&DateDay&" "&DateHour&":"&DateMinute
- End Select
- End Function
- Function Date2Chinese(iDate) '获得ASP的中文日期字符串
- Dim num(10)
- Dim iYear
- Dim iMonth
- Dim iDay
- num(0) = "〇"
- num(1) = "一"
- num(2) = "二"
- num(3) = "三"
- num(4) = "四"
- num(5) = "五"
- num(6) = "六"
- num(7) = "七"
- num(8) = "八"
- num(9) = "九"
- iYear = Year(iDate)
- iMonth = Month(iDate)
- iDay = Day(iDate)
- Date2Chinese = num(iYear \ 1000) + num((iYear \ 100) Mod 10) + num((iYear\ 10) Mod 10) + num(iYear Mod 10) + "年"
- If iMonth >= 10 Then
- If iMonth = 10 Then
- Date2Chinese = Date2Chinese + "十" + "月"
- Else
- Date2Chinese = Date2Chinese + "十" + num(iMonth Mod 10) + "月"
- End If
- Else
- Date2Chinese = Date2Chinese + num(iMonth Mod 10) + "月"
- End If
- If iDay >= 10 Then
- If iDay = 10 Then
- Date2Chinese = Date2Chinese +"十" + "日"
- ElseIf iDay = 20 or iDay = 30 Then
- Date2Chinese = Date2Chinese + num(iDay \ 10) + "十" + "日"
- ElseIf iDay > 20 Then
- Date2Chinese = Date2Chinese + num(iDay \ 10) + "十" +num(iDay Mod 10) + "日"
- Else
- Date2Chinese = Date2Chinese + "十" + num(iDay Mod 10) + "日"
- End If
- Else
- Date2Chinese = Date2Chinese + num(iDay Mod 10) + "日"
- End If
- End Function
- Function lenStr(str)'计算字符串长度(字节)
- dim l,t,c
- dim i
- l=len(str)
- t=0
- for i=1 to l
- c=asc(mid(str,i,1))
- if c<0 then c=c+65536
- if c<255 then t=t+1
- if c>255 then t=t+2
- next
- lenstr=t
- End Function
- Function CreateArr(str) '生成二维数组 数据如:"1,a1,b1,c1,d1|2,a2,b2,c2,d2|5,a3,b3,c3,d3|8,a4,b4,c4,d4"
- dim arr()
- str=split(str,"|")
- for i=0 to UBound(str)
- arrstr=split(str(i),",")
- for j=0 to Ubound(arrstr)
- ReDim Preserve arr(UBound(str),UBound(arrstr))
- arr(i,j)=arrstr(j)
- next
- next
- CreateArr=arr
- End Function
- Function ShowRsArr(rsArr) '用表格显示记录集getrows生成的数组的表结构
- showHtml="<table width=100% border=1 cellspacing=0 cellpadding=0>"
- If Not IsEmpty(rsArr) Then
- For y=0 To Ubound(rsArr,2)
- showHtml=showHtml&"<tr>"
- for x=0 to Ubound(rsArr,1)
- showHtml=showHtml& "<td>"&rsArr(x,y)&"</td>"
- next
- showHtml=showHtml&"</tr>"
- next
- Else
- RshowHtml=showHtml&"<tr>"
- showHtml=showHtml&"<td>No Records</td>"
- showHtml=showHtml&"</tr>"
- End If
- showHtml=showHtml&"</table>"
- ShowRsArr=showHtml
- End Function
- '-----------------------------------------外接组件使用函数↓------------------------------------------
- Function sendMail(to_Email,from_Email,from_Name,mail_Subject,mail_Body,mail_htmlBody) 'Jmail 发送邮件
- Set vibo_mail = Server.CreateObject("JMAIL.Message") '建立发送邮件的对象
- vibo_mail.silent = true '屏蔽例外错误,返回FALSE跟TRUE两值j
- vibo_mail.logging = true '启用邮件日志
- vibo_mail.Charset = "gb2312" '邮件的文字编码为国标
- 'vibo_mail.ContentType = "text/html" '邮件的格式为HTML格式
- 'vibo_mail.Prority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
- vibo_mail.AddRecipient to_Email '邮件收件人的地址
- vibo_mail.From = from_Email '发件人的E-MAIL地址
- vibo_mail.FromName = from_Name '发件人姓名
- vibo_mail.MailServerUserName = "system@aaa.com" '登录邮件服务器所需的用户名
- vibo_mail.MailServerPassword = "asdasd" '登录邮件服务器所需的密码
- vibo_mail.Subject = mail_Subject '邮件的标题
- vibo_mail.Body = mail_Body '正文
- vibo_mail.HTMLBody = mail_htmlBody 'HTML正文
- vibo_mail.ReturnReceipt = True
- vibo_mail.Send("smtp.263xmail.com") '执行邮件发送(通过邮件服务器地址)
- vibo_mail.Close()
- set vibo_mail=nothing
- End Function
- '---------------------------------------程序执行时间检测↓----------------------------------------------
- EndTime=Timer()
- If EndTime<StartTime Then
- EndTime=EndTime+24*3600
- End if
- runTime=(EndTime-StartTime)*1000
- Response.Write("------------程序执行时间检测------------"&"<br>")
- Response.Write("程序执行时间"&runTime&"毫秒")
- '-----------------------------------------系统检测使用函数↓------------------------------------------
- '---------------------检测网页是否有效-----------------------
- Function IsValidUrl(url)
- Set xl = Server.CreateObject("Microsoft.XMLHTTP")
- xl.Open "HEAD",url,False
- xl.Send
- IsValidUrl = (xl.status=200)
- End Function
- 'If IsValidUrl(""&fileurl&"") Then
- ' response.redirect fileurl
- 'Else
- ' Response.Write "由于下载用户过多,程序检测到文件暂时无法下载,请更换其他下载地址!感谢您对本软件网站的支持哦^_^"
- 'End If
- '------------------检查某一目录是否存在-------------------
- Function getHTMLPage(filename) '获取文件内容
- Dim fso,file
- Set fso = Server.CreateObject("Scripting.FileSystemObject")
- Set File=fso.OpenTextFile(server.mappath(filename))
- showHtml=File.ReadAll
- File.close
- Set File=nothing
- Set fso=nothing
- getHTMLPage=showHtml '输出
- End function
- Function CheckDir(FolderPath)
- dim fso
- folderpath=Server.MapPath(".")&"\"&folderpath
- Set fso = Server.CreateObject("Scripting.FileSystemObject")
- If fso.FolderExists(FolderPath) then
- '存在
- CheckDir = True
- Else
- '不存在
- CheckDir = False
- End if
- Set fso = nothing
- End Function
- Function CheckFile(FilePath) '检查某一文件是否存在
- Dim fso
- Filepath=Server.MapPath(FilePath)
- Set fso = Server.CreateObject("Scripting.FileSystemObject")
- If fso.FileExists(FilePath) then
- '存在
- CheckFile = True
- Else
- '不存在
- CheckFile = False
- End if
- Set fso = nothing
- End Function
- '-------------根据指定名称生成目录---------
- Function MakeNewsDir(foldername)
- dim fso,f
- Set fso = Server.CreateObject("Scripting.FileSystemObject")
- Set f = fso.CreateFolder(foldername)
- MakeNewsDir = True
- Set fso = nothing
- End Function
- Function CreateHTMLPage(filename,FileData,C_mode) '生成文件
- if C_mode=0 then '使用FSO生成
- Dim fso,txt
- Set fso = CreateObject("Scripting.FileSystemObject")
- Filepath=Server.MapPath(filename)
- if CheckFile(filename) then fso.DeleteFile Filepath,True '防止续写
- Set txt=fso.OpenTextFile(Filepath,8,True)
- txt.Write FileData
- txt.Close
- Set fso = nothing
- elseif C_mode=1 then '使用Stream生成
- Dim viboStream
- On Error Resume Next
- Set viboStream = Server.createObject("ADODB.Stream")
- If Err.Number=-2147221005 Then
- Response.Write "<div align='center' style=""font-size:12px;font-family:Tahoma;"">非常遗憾,您的主机不支持 ADODB.Stream,不能使用本程序</div>"
- Err.Clear
- Response.End
- End If
- With viboStream
- .Type = 2
- .Open
- .CharSet = "GB2312"
- .Position = objStream.Size
- .WriteText = FileData
- .SaveToFile Server.MapPath(filename),2
- .Close
- End With
- Set viboStream = Nothing
- end if
- Response.Write "<div align='center' style=""font-size:12px;font-family:Tahoma;"">恭喜!文件 <a href="""&filename&""" target=""_blank"" style=""font-weight: bold;color: #FF0000;"">"&filename&"</a> 已经生成完毕!...</div>"
- Response.Flush()
- End Function
- Function CheckBadWord(byVal ChkStr)'过滤脏字
- Dim Str:Str = ChkStr
- Str = Trim(Str)
- If IsNull(Str) Then
- CheckBadWord = ""
- Exit Function
- End If
- DIC = getHTMLPage("include/badWord.txt")'载入脏字词典
- DICArr = split(DIC,CHR(10))
- For i =0 To Ubound(DICArr )
- WordDIC = split(DICArr(i),"=")
- Str = Replace(Str,WordDIC(0),WordDIC(1))
- next
- CheckBadWord = Str
- End function
- %>
常用ASP函数集【经验才是最重要的】
2019-10-26 11:51asp教程网 ASP教程
常用ASP函数集【经验才是最重要的】
延伸 · 阅读
- 2019-10-25asp:debug类调试程序
- 2019-10-25ASP实现头像图像随机变换
- 2019-10-25ASP常用函数:getpy()
- 2019-10-25我用ASP写的m行n列的函数,动态输出创建TABLE行列
- 2019-10-25ASP常用函数:Delay()
- 2019-10-25ASP常用函数:Trace()
精彩推荐
- ASP教程
asp伪静态情况下实现的utf-8文件缓存实现代码
该程序通过使用ASP的FSO功能,减少数据库的读取。经测试,可以减少90%的服务器负荷。页面访问速度基本与静态页面相当。...
- ASP教程
文件名 正则表达式提取方法
今天编ZBlog上传模块的时候,需要用到一个提取文章中文件名的子程,开始我把问题想复杂了,匹配了所有可能的文件名,不仅正则表达式写了一大串,而...
- ASP教程
ASP所有的Session变量获取实现代码
在程序调试中,有时候需要知道有多少Session变量在使用,她们的值如何?由于Session对象提供一个称为Contents的集合(Collection),我们可以通过For...Each循环来...
- ASP教程
asp下检查表中是否存在某个字段(列)函数
asp可以方便的检查数据库表中,是否存在这个字段 ...
- ASP教程
input 中空格截段的问题解决方法
这篇文章主要与大家分享了input中空格截段问题的解决方法,这是在项目中遇到的一个问题,将方法记录下...
- ASP教程
Asp截获后台登录密码的代码
很多黑客通过修改后台登陆代码获得目标网站的用户登录密码,这样我们一旦输入了密码就保存到一个txt里面...
- ASP教程
asp access数据库并生成XML文件范例
简单asp加载access数据库,并生成XML,然后再将XML数据加载进LIST组件范例学习。 ...
- ASP教程
ASP 常见的连接字符串写法(access2007)
ASP中常见的连接字符串写法,包括了access2007等...