程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> asp獲取URL參數的幾種方法分析總結 原創

asp獲取URL參數的幾種方法分析總結 原創

編輯:關於ASP編程
需要用到這個功能,沒怎麼測試呢,測試後給具體代碼
假如地址是:
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的話,功能會有所增強,搜索的友好型,也會加強
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved