ASP的一些自定义函数整理第12页
2018-09-06 13:15
  <% 
============================================================================================================================ 
函数列表: 
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 
函数作用:建立数据库的连接 
作者名称:茫仔nbsp;博客: 
建立时间: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.Opendriver={MicrosoftAccessDriver(*.mdb)};dbq=&DataBaseConnectStr 
elseifDBType=1then 
Conn_object.OpenProvider=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注入 
作者名称:
建立时间: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 
Case1 
dateString=Year(dateStr)&-&Month(dateStr)&-&Day(dateStr) 
Case2 
dateString=Year(dateStr)&.&Month(dateStr)&.&Day(dateStr) 
Case3 
dateString=Year(dateStr)&/&Month(dateStr)&/&Day(dateStr) 
Case4 
dateString=Month(dateStr)&/&Day(dateStr)&/&Year(dateStr) 
Case5 
dateString=Day(dateStr)&/&Month(dateStr)&/&Year(dateStr) 
Case6 
dateString=Month(dateStr)&-&Day(dateStr)&-&Year(dateStr) 
Case7 
dateString=Month(dateStr)&.&Day(dateStr)&.&Year(dateStr) 
Case8 
dateString=Month(dateStr)&-&Day(dateStr) 
Case9 
dateString=Month(dateStr)&/&Day(dateStr) 
Case10 
dateString=Month(dateStr)&.&Day(dateStr) 
Case11 
dateString=Month(dateStr)&language_arr(6)&Day(dateStr)&language_arr(7) 
Case12 
dateString=Day(dateStr)&language_arr(7)&Hour(dateStr)&language_arr(8) 
case13 
dateString=Day(dateStr)&language_arr(7)&Hour(dateStr)&language_arr(8) 
Case14 
dateString=Hour(dateStr)&language_arr(8)&Minute(dateStr)&language_arr(9) 
Case15 
dateString=Hour(dateStr)&:&Minute(dateStr) 
Case16 
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.openGET,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 
============================================================================================================================ 12下一页阅读全文