当前位置: 首页 > 图文教程 > 网络编程 > ASP > FormatRemoteUrl函数之asp实现格式化成当前网站完整的URL-将相对地址转换为绝对地址的代码

ASP
用密码保护页面 (II)
用密码保护页面 (III)
简单的文件目录浏览源程序
ASP中的函数应用方法及应用举例(一)
ASP中的函数应用方法及应用举例(二)
完整的访问统计系统(一:数据库篇)
完整的访问统计程序(二 程序篇)
完整的访问统计程序(三 应用篇)
一个提供用户输入时期的绝好程序之(一)
一个提供用户输入时期的绝好程序之(二)
构建你的网站新闻自动发布系统之五
构建你的网站新闻自动发布系统之六
完整的访问统计程序(二 程序篇)
完整的访问统计程序(三 应用篇)
ASP环境下邮件列表功能的实现 (一)
ASP环境下邮件列表功能的实现 (二)
ASP环境下邮件列表功能的实现 (三)
ASP环境下邮件列表功能的实现 (四)
ASP进阶之文章在线管理更新(1)
ASP进阶之文章在线管理更新(2)

ASP 中的 FormatRemoteUrl函数之asp实现格式化成当前网站完整的URL-将相对地址转换为绝对地址的代码


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

'================================================
'函数名:FormatRemoteUrl
'作 用:格式化成当前网站完整的URL-将相对地址转换为绝对地址
'参 数: url ----Url字符串
'参 数: CurrentUrl ----当然网站URL
'返回值:格式化取后的Url
'================================================
Public Function FormatRemoteUrl(ByVal URL,ByVal CurrentUrl)
Dim strUrl
If Len(URL) < 2 Or Len(URL) > 255 Or Len(CurrentUrl) < 2 Then
FormatRemoteUrl = vbNullString
Exit Function
End If
CurrentUrl = Trim(Replace(Replace(Replace(Replace(Replace(CurrentUrl, "'", vbNullString), """", vbNullString), vbNewLine, vbNullString), "\", "/"), "|", vbNullString))
URL = Trim(Replace(Replace(Replace(Replace(Replace(URL, "'", vbNullString), """", vbNullString), vbNewLine, vbNullString), "\", "/"), "|", vbNullString))
If InStr(9, CurrentUrl, "/") = 0 Then
strUrl = CurrentUrl
Else
strUrl = Left(CurrentUrl, InStr(9, CurrentUrl, "/") - 1)
End If
If strUrl = vbNullString Then strUrl = CurrentUrl
Select Case Left(LCase(URL), 6)
Case "http:/", "https:", "ftp://", "rtsp:/", "mms://"
FormatRemoteUrl = URL
Exit Function
End Select
If Left(URL, 1) = "/" Then
FormatRemoteUrl = strUrl & URL
Exit Function
End If
If Left(URL, 3) = "../" Then
Dim ArrayUrl
Dim ArrayCurrentUrl
Dim ArrayTemp()
Dim strTemp
Dim i, n
Dim c, l
n = 0
ArrayCurrentUrl = Split(CurrentUrl, "/")
ArrayUrl = Split(URL, "../")
c = UBound(ArrayCurrentUrl)
l = UBound(ArrayUrl) + 1
If c > l + 2 Then
For i = 0 To c - l
ReDim Preserve ArrayTemp(n)
ArrayTemp(n) = ArrayCurrentUrl(i)
n = n + 1
Next
strTemp = Join(ArrayTemp, "/")
Else
strTemp = strUrl
End If
URL = Replace(URL, "../", vbNullString)
FormatRemoteUrl = strTemp & "/" & URL
Exit Function
End If
strUrl = Left(CurrentUrl, InStrRev(CurrentUrl, "/"))
FormatRemoteUrl = strUrl & Replace(URL, "./", vbNullString)
Exit Function
End Function