<%
'============================================================================================================================
'函数列表:
'1:建立数据库的连接ConnOpen(DataBaseConnectStr,DBType,Conn_object)
'2:断开数据库的连接ConnClose(Conn_object)
'3:防止SQL注入SafeRequest(paraName,paraType)
'4:格式化日期DateFormat(dateStr,dateType)
'5:显示错误提示ShowErr(errStr)
'6:查询字符串中特定数据SelectStr(contentStr,patternStr,patternNum)
'7:过滤指定字符Leach(contentStr,badWords)
'8:远程文件内容抓取Seize(urlStr)
'9:数据流编码处理BytesToBstr(body,cset)
'10:编码cookiescodeCookie(contentStr)
'11:解码cookiesDecodeCookie(contentStr)
'12:检验数据提交来源是否合法ChkPost()
'13:个性化加密MyEncrypt(StrPassword)
'14:禁止浏览器缓存本页NoBuffer()
'15:网页格式化输入文本HTMLEncode(fString)
'16:从头部截取字符串的指定长度(按字符数算)GotTopic(Str,StrLen)
'17:检测验证码CheckRadomPass(RadomPass)
'18:生成验证码GetCode()
'19:获取客户端操作系统版本GetSystem()
'20:数据库事务处理ConnManage(Conn_object)
'21:快速排序(递归)QuickSort(arr,Low,High)
'22:将数组的元素以特定字符串连起来arr_join(arr,character)
'23:返回字符串以某分割符分割的数目count_character(str,character)
'24:截取含有分割符的字符串中指定数目的字符串inter_str_by_character_num(str,character,start,num)
'25:利用Stream下载文件downloadFile(strFile)
'26:返回信息send_back(ResultWords)
'27:获取错误信息get_err()
'28:与SafeRequest相反SafeResponse(content)
'29:保存远程图片SaveRemoteFile(LocalFileName,RemoteFileUrl)
'30:...
dimlanguage_arr(10)
language_arr(0)="数据库连接的参数设置错误!"
language_arr(1)="数据库连接的类型参数设置错误!"
language_arr(2)="数据库连接失败!"
language_arr(3)="非法的参数值!"
language_arr(4)="参数值不是有效的日期格式!"
language_arr(5)="操作失败!"
language_arr(6)="栏目有重名!"
language_arr(7)="栏目名称为空!"
language_arr(8)="栏目文件夹创建失败!"
language_arr(9)="您没有此权限!"
'============================================================================================================================
'函数ID:1
'函数作用:建立数据库的连接
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1510:28
'修改时间:
'传人参数:
'connectStr:数据库连接字符串
'connectType:数据库类别-数字型,0为Access,1为MSSQL
'返回值:
'============================================================================================================================
subConnOpen(DataBaseConnectStr,DBType,Conn_object)
SetConn_object=Server.Createobject("adodb.connection")
ifDataBaseConnectStr=""thencallShowErr(language_arr(0))
ifDBType=0then
Conn_object.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&DataBaseConnectStr
elseifDBType=1then
Conn_object.Open"Provider=SQLOLEDB.1;"&DataBaseConnectStr
else
callShowErr(language_arr(1))
endif
err.clear
endsub
'============================================================================================================================
'函数ID:2
'函数作用:断开数据库的连接
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1615:10
'修改时间:
'传人参数:
'返回值:
'============================================================================================================================
SubConnClose(Conn_object)
Conn_object.close
setConn_object=nothing
Endsub
'============================================================================================================================
'函数ID:3
'函数作用:防止SQL注入
'作者名称:http://news.dvbbs.net/infoview/Article_2906.html
'建立时间:2006-2-1615:32
'修改时间:
'传人参数:
'paraName:参数名称-字符型
'paraType:参数类型-数字型(1表示以上参数是数字,0表示以上参数为字符)
'返回值:
'过滤后的字符串
'============================================================================================================================
FunctionSafeRequest(paraName,paraType)
dimparaValue
paraValue=Request(paraName)
selectcaseparaType
case0
paraValue=replace(paraValue,"'","[system:34]")
paraValue=replace(paraValue,"=","[system:61]")
case1
ifnotIsNumeric(paraValue)thencallShowErr(language_arr(3))
case-1
ifnotIsNumeric(paraValue)thencallShowErr(language_arr(3))
ifparaValue=""thenparaValue=0
caseelse
iflen(paraValue)>paraTypethencallShowErr(language_arr(3))
paraValue=replace(paraValue,"'","[system:34]")
paraValue=replace(paraValue,"=","[system:61]")
endselect
SafeRequest=paraValue
Endfunction
'============================================================================================================================
'函数ID:4
'函数作用:格式化日期
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1615:45
'修改时间:
'传人参数:
'dateStr:日期字符串
'paraType:日期类型-数字型
'返回值:
'格式化后的日期
'============================================================================================================================
FunctionDateFormat(dateStr,dateType)
DimdateString
ifIsDate(dateStr)=Falsethen
callShowErr(language_arr(4))
endif
SelectCasedateType
Case"1"
dateString=Year(dateStr)&"-"&Month(dateStr)&"-"&Day(dateStr)
Case"2"
dateString=Year(dateStr)&"."&Month(dateStr)&"."&Day(dateStr)
Case"3"
dateString=Year(dateStr)&"/"&Month(dateStr)&"/"&Day(dateStr)
Case"4"
dateString=Month(dateStr)&"/"&Day(dateStr)&"/"&Year(dateStr)
Case"5"
dateString=Day(dateStr)&"/"&Month(dateStr)&"/"&Year(dateStr)
Case"6"
dateString=Month(dateStr)&"-"&Day(dateStr)&"-"&Year(dateStr)
Case"7"
dateString=Month(dateStr)&"."&Day(dateStr)&"."&Year(dateStr)
Case"8"
dateString=Month(dateStr)&"-"&Day(dateStr)
Case"9"
dateString=Month(dateStr)&"/"&Day(dateStr)
Case"10"
dateString=Month(dateStr)&"."&Day(dateStr)
Case"11"
dateString=Month(dateStr)&language_arr(6)&Day(dateStr)&language_arr(7)
Case"12"
dateString=Day(dateStr)&language_arr(7)&Hour(dateStr)&language_arr(8)
case"13"
dateString=Day(dateStr)&language_arr(7)&Hour(dateStr)&language_arr(8)
Case"14"
dateString=Hour(dateStr)&language_arr(8)&Minute(dateStr)&language_arr(9)
Case"15"
dateString=Hour(dateStr)&":"&Minute(dateStr)
Case"16"
dateString=Year(dateStr)&language_arr(5)&Month(dateStr)&language_arr(6)&Day(dateStr)&language_arr(7)
CaseElse
dateString=dateStr
EndSelect
DateFormat=dateString
EndFunction
'============================================================================================================================
'函数ID:5
'函数作用:显示错误提示
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1616:29
'修改时间:
'传人参数:
'errStr:错误提示-字符型
'返回值:返回提交页面
'============================================================================================================================
subShowErr(errStr)
Response.Write("<script>alert("""&errStr&""");location.href=""javascript:history.back()"";</script>")
Response.End
Endsub
'============================================================================================================================
'函数ID:6
'函数作用:查询字符串中特定数据
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1616:40
'修改时间:
'传人参数:
'contentStr:查询字符串
'patternStr:匹配式字符串
'patternNum:查询定位-数字型
'返回值:
'找不到返回false
'patternNum为-1返回所有匹配字符串并以[10]隔开
'否则返回指定位置的字符串
'============================================================================================================================
FunctionSelectStr(contentStr,patternStr,patternNum)
dimobjRegExp,matches,matche
ifcontentStr=""then
callShowErr(language_arr(12))
endif
SetobjRegExp=newRegExp'建立正则表达式
objRegExp.pattern=patternStr'设置模式
objRegExp.IgnoreCase=False'设置是否区分字符大小写
objRegExp.Global=true'设置全局可用性
objRegExp.pattern=patternStr'匹配式
ifobjRegExp.test(contentStr)=falsethen'全局匹配
SelectStr=false
else
Setmatches=objRegExp.Execute(contentStr)'执行搜索
ifpatternNum=-1then
foreachmatcheinmatches
SelectStr=SelectStr&"[10]"&matche.value
next
else
SelectStr=matches.Item(patternNum).value
endif
endif
SetobjRegExp=Nothing
EndFunction
'============================================================================================================================
'函数ID:7
'函数作用:过滤指定字符
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1616:59
'修改时间:
'传人参数:
'contentStr:源字符串
'badWords:要过滤的字符串,若数目大于1则用英文状态的"^"隔开
'返回值:
'返回过滤后的字符串
'============================================================================================================================
FunctionLeach(contentStr,badWords)
dimbadWordsArr,i
badWordsArr=Split(badWords,"^")
fori=0toUBound(badWordsArr)
contentStr=replace(contentStr,badWordsArr(i),"")
next
leach=contentStr
endFunction
'============================================================================================================================
'函数ID:8
'函数作用:远程文件内容抓取
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1617:24
'修改时间:
'传人参数:
'urlStr:远程文件地址
'返回值:
'返回远程文件内容
'============================================================================================================================
functionSeize(urlStr)
dimconnect
ifurlStr=""then
callShowErr(language_arr(13))
else
Setconnect=CreateObject("Microsoft.XMLHTTP")'建立XMLHTTP对象
connect.open"GET",urlStr,false'设置参数,通信方式为get,请求为同步,后面还有两个可选属性:userID,password用于用户验证
connect.send()'数据发送,Send方法的参数类型可以是字符串、DOM树或任意数据流
Seize=BytesToBStr(connect.responseBody,"GB2312")'返回信息,编码为中文
setconnect=nothing
endif
endfunction
'============================================================================================================================
'函数ID:9
'函数作用:数据流编码处理
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1617:30
'修改时间:
'传人参数:
'body:数据内容
'cset:编码格式
'返回值:
'编码处理后的信息
'============================================================================================================================
FunctionBytesToBstr(body,cset)
dimobjstream
setobjstream=Server.CreateObject("adodb.stream")
objstream.Type=1'以二进制模式打开
objstream.Mode=3
objstream.Open
objstream.Writebody
objstream.Position=0
objstream.Type=2
objstream.Charset=cset
BytesToBstr=objstream.ReadText
objstream.Close
setobjstream=nothing
EndFunction
'============================================================================================================================
'函数ID:10
'函数作用:编码cookies
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1617:36
'修改时间:
'传人参数:
'contentStr:数据内容
'返回值:
'编码处理后的信息,字符以"a"隔开
'============================================================================================================================
FunctioncodeCookie(contentStr)
Dimi,returnStr
Fori=Len(contentStr)to1Step-1
returnStr=returnStr&Ascw(Mid(contentStr,i,1))
If(i<>1)ThenreturnStr=returnStr&"a"
Next
CodeCookie=returnStr
EndFunction
'============================================================================================================================
'函数ID:11
'函数作用:解码cookies
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1716:58
'修改时间:
'传人参数:
'contentStr:数据内容
'返回值:
'解码处理后的信息
'============================================================================================================================
FunctionDecodeCookie(contentStr)
Dimi
DimStrArr,StrRtn
StrArr=Split(contentStr,"a")
Fori=0toUBound(StrArr)
IfisNumeric(StrArr(i))=TrueThen
StrRtn=Chrw(StrArr(i))&StrRtn
Else
StrRtn=contentStr
ExitFunction
EndIf
Next
DecodeCookie=StrRtn
EndFunction
'============================================================================================================================
'函数ID:12
'函数作用:检验数据提交来源是否合法
'作者名称:茫仔xiamangmang@gmail.com博客:blog.mzoe.com
'建立时间:2006-2-1818:55
'修改时间:
'传人参数:
'
'返回值:
'Boolean
'============================================================================================================================
FunctionChkPost()
Dimserver_v1,server_v2
Chkpost=False
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
IfMid(server_v1,8,len(server_v2))=server_v2ThenChkpost=True
EndFunction
'============================================================================================================================ 当前1/2页12下一页阅读全文