LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

asp获取当前网址和文件名的代码

admin
2022年6月22日 0:12 本文热度 705
Dim curUrl
curUrl = Replace(Request.ServerVariables("script_Name"),"/","")

当前页地址 
<%dim urlname 
urlname=Request.ServerVariables("QUERY_STRING")%> 
<%=Request.ServerVariables("script_NAME")%><%if urlname<>"" then%>?<%=urlname%><%end if%>

需要用到这个功能,没怎么测试呢,测试后给具体代码。
假如地址是:
http://dxy.com:8082/test/geturl.asp?Param-VR52tmx3syn03777.html

方法一:简单,得不到参数,只有一个虚拟路径,代码如下:
GetUrl =request("url")  '这个因为我们没有url=什么字样所以直接pass掉 

方法二:得到整个URL,得到参数,代码如下:
'得到当前页面的地址   
   Function GetUrl()   
   On Error Resume Next   
   Dim strTemp   
   If LCase(Request.ServerVariables("HTTPS")) = "off" Then   
   strTemp = "http://"   
   Else   
   strTemp = "https://"   
   End If   
   strTemp = strTemp & Request.ServerVariables("SERVER_NAME")   
   If Request.ServerVariables("SERVER_PORT") <> 80 Then strTemp = strTemp & ":" & Request.ServerVariables("SERVER_PORT")   
   strTemp = strTemp & Request.ServerVariables("URL")   
   If Trim(Request.QueryString) <> "" Then strTemp = strTemp & "?" & Trim(Request.QueryString)   
   GetUrl = strTemp   
   End Function  

经测试这个代码得到的路径为:
/test/geturl.asp?Param-VR52tmx3syn03777.html=

方法二:得到虚拟路径,得到参数,代码如下:
Private Function GetUrl()  
Dim scriptAddress,M_ItemUrl,M_item 
scriptAddress = CStr(Request.ServerVariables("script_NAME")) '取得当前地址  
M_ItemUrl = ""  
If (Request.QueryString <> "") Then  
scriptAddress = scriptAddress & "?"  
For Each M_item In Request.QueryString 
If M_item = "page_num" Then Exit for '此处的作用就是过滤掉Page_num这个页次的参数(该参数是在page_turn.asp中自行设置的,根据个人设定而变),否则每次翻页都会叠加这个参数,虽然不影响功能,但总归不太好吧~~ 
If InStr(page,M_Item)=0 Then  
M_ItemUrl = M_ItemUrl & M_Item &"="& Server.URLEncode(Request.QueryString(""&M_Item&"")) 
else 
M_ItemUrl = M_ItemUrl & M_Item &"="& Server.URLEncode(Request.QueryString(""&M_Item&"")) & "&" 
End If  
Next 
Else 
scriptAddress = scriptAddress & "?" 
end if  
GetUrl = scriptAddress & M_ItemUrl  
End Function 

上面的代码得到的地址为:
http://dxy.com:8082/test/geturl.asp?Param-VR52tmx3syn03777.html

基本上差不多,如果只是为了得到?号后面的东西,我们可以用下面的代码:
response.write replace(request.querystring,".html","") 

得到的就是Param-VR52tmx3syn03777,是不是满足了我们的需要了呢。

PS:上面的所有情况只是针对纯asp,如果结合urlrewrite的话,功能会有所增强,搜索的友好些,也会加强。

该文章在 2022/6/22 0:31:11 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved