獲取客戶端IP、瀏覽器和操作系統(tǒng)信息的幾種方法 | |
<Script language=Vbscript> ‘‘=首先---窮舉法:用VBS中的Navigator.appVersion(或者.UserAgent)屬性= ‘‘=此種方法可以在客戶端顯示,但是不可以保存到服務(wù)器端數(shù)據(jù)庫(kù)里= Document.write Navigator.appVersion&"<p>" Function Browser(Info) Info=Navigator.appVersion ‘‘在這里初始化了Info,在實(shí)際應(yīng)用中可以作為其他變量賦值 If InStr(Info,"MSIE 6")>0 Then Browser="Internet Explorer 6.0" ElseIf InStr(Info,"MSIE 5.5")>0 Then Browser="Internet Explorer 5.5" ElseIf InStr(Info,"MSIE 5.0")>0 Then Browser="Internet Explorer 5.0" ElseIf InStr(Info,"MSIE 4")>0 Then Browser="Internet Explorer 4.0" Else Browser="未知的瀏覽器!" End if Document.Write "您的瀏覽器是:"&Browser&"<p>" End Function Function System(Info) Info=Navigator.appVersion If InStr(Info,"NT 5.1")>0 Then System="Windows XP" ElseIf InStr(Info,"NT 5.0")>0 Then System="Windows 2000" ElseIf InStr(Info,"NT 4")>0 Then System="Windows NT" ElseIf InStr(Info,"98")>0 Then System="Windows 98" ElseIf InStr(Info,"Me")>0 Then System="Windows Me" ElseIf InStr(Info,"95")>0 Then System="Windows 95" Else System="未知的操作系統(tǒng)!" End if Document.Write "您的操作系統(tǒng)是:"&System&"<p>" End Function Call Browser(Info) Call System(Info) </Script> ------------------------------------------------------------<p> <% ‘‘=其次:用Request.ServerVariables("Http_User_Agent")= Response.Write Request.ServerVariables("Http_User_Agent")&"<p>" Function Browser(Info) Info=Request.ServerVariables("Http_User_Agent") ‘‘在這里初始化了Info,在實(shí)際應(yīng)用中可以作為其他變量賦值 If InStr(Info,"MSIE 6")>0 Then Browser="Internet Explorer 6.0" ElseIf InStr(Info,"MSIE 5.5")>0 Then Browser="Internet Explorer 5.5" ElseIf InStr(Info,"MSIE 5.0")>0 Then Browser="Internet Explorer 5.0" ElseIf InStr(Info,"MSIE 4")>0 Then Browser="Internet Explorer 4.0" Else Browser="未知的瀏覽器!" End if Response.Write "您的瀏覽器是:"&Browser&"<p>" End Function Function System(Info) Info=Request.ServerVariables("Http_User_Agent") If InStr(Info,"NT 5.1")>0 Then System="Windows XP" ElseIf InStr(Info,"NT 5.0")>0 Then System="Windows 2000" ElseIf InStr(Info,"NT 4")>0 Then System="Windows NT" ElseIf InStr(Info,"98")>0 Then System="Windows 98" ElseIf InStr(Info,"Me")>0 Then System="Windows Me" ElseIf InStr(Info,"95")>0 Then System="Windows 95" Else System="未知的操作系統(tǒng)!" End if Response.Write "您的操作系統(tǒng)是:"&System&"<p>" End Function Call Browser(Info) Call System(Info) %> ===========================================================<p> <% ‘‘第三種方法:在appVersion/UserAgent或Request.ServerVariables("Http_User_Agent") ‘‘=之中截取固定的字符串,把有關(guān)瀏覽器和操作系統(tǒng)的字符串截取出并顯示= ‘‘=顯然問(wèn)題在于,如果某一天Microsoft把瀏覽器版本的格式改變了,那么此方法會(huì)出錯(cuò) ‘‘=格式:瀏覽器版本-左數(shù)第31個(gè)字符起3個(gè)字符,系統(tǒng)版本-左數(shù)第44個(gè)字符起6個(gè)字符 Response.Write Request.ServerVariables("Http_User_Agent")&"<p>" Function Browser2(Info) Info=Request.ServerVariables("Http_User_Agent") If InStr(Info,"MSIE")>0 Then ‘‘判斷當(dāng)前瀏覽器是否是"Microsoft IE"類型 Version=Mid(Info,31,3) IE="Internet Explorer" Response.Write "您的瀏覽器是:"&IE&" "&Version&"<p>" Else Response.Write "您的瀏覽器是:未知的瀏覽器" End if End Function Function System2(Info) Info=Request.ServerVariables("Http_User_Agent") If InStr(Info,"Windows")>0 Then ‘‘判斷當(dāng)前操作系統(tǒng)是否是"Windows"平臺(tái) Version=Mid(Info,44,6) Plat="Windows" ‘‘下面還要進(jìn)行判斷版本,以供顯示具體的平臺(tái) If InStr(Version,"NT 5.1")>0 Then Plat="Windows XP" ElseIf InStr(Version,"NT 5.0")>0 Then Plat="Windows 2000" ElseIf InStr(Version,"NT 4")>0 Then Plat="Windows NT" ElseIf InStr(Version,"98")>0 Then Plat="Windows 98" ElseIf InStr(Version,"Me")>0 Then Plat="Windows Me" ElseIf InStr(Version,"95")>0 Then Plat="Windows 95" Else Plat="未知的操作系統(tǒng)!" End if Response.Write "您的操作系統(tǒng)是:"&Plat&"<p>" Else Response.Write "您的操作系統(tǒng)是:未知的操作系統(tǒng)" End if End Function Call Browser2(Info) Call System2(Info) %> ----------------------------------------------------------<p> <Script Language=VBscript> Document.Write Navigator.appVersion&"<p>" Function Browser2(Info) Info=Navigator.appVersion If InStr(Info,"MSIE")>0 Then ‘‘判斷當(dāng)前瀏覽器是否是"Microsoft IE"類型 Version=Mid(Info,23,3) IE="Internet Explorer" Document.Write "您的瀏覽器是:"&IE&" "&Version&"<p>" Else Document.Write "您的瀏覽器是:未知的瀏覽器" End if End Function Function System2(Info) Info=Navigator.appVersion If InStr(Info,"Windows")>0 Then ‘‘判斷當(dāng)前操作系統(tǒng)是否是"Windows"平臺(tái) Version=Mid(Info,36,6) Plat="Windows" ‘‘下面還要進(jìn)行判斷版本,以供顯示具體的平臺(tái) If InStr(Version,"NT 5.1")>0 Then Plat="Windows XP" ElseIf InStr(Version,"NT 5.0")>0 Then Plat="Windows 2000" ElseIf InStr(Version,"NT 4")>0 Then Plat="Windows NT" ElseIf InStr(Version,"98")>0 Then Plat="Windows 98" ElseIf InStr(Version,"Me")>0 Then Plat="Windows Me" ElseIf InStr(Version,"95")>0 Then Plat="Windows 95" Else Plat="未知的操作系統(tǒng)!" End if Document.Write "您的操作系統(tǒng)是:"&Plat&"<p>" Else Document.Write "您的操作系統(tǒng)是:未知的操作系統(tǒng)" End if End Function Call Browser2(Info) Call System2(Info) </Script> =============================================<p> <% ‘‘========另外,有人提出利用ASP的ActiveX組件MSWC.BrowserType的屬性來(lái)實(shí)現(xiàn)========== ‘‘========現(xiàn)在問(wèn)題是,IE 6.0以上版本的這個(gè)組件還沒(méi)有更新,因此隨意使用會(huì)出錯(cuò)===== ‘‘========我們不提倡這種方法===================================================== Dim BT Set BT=Server.CreateObject("MSWC.BrowserType") Response.Write BT.Browser&"<br>" Response.Write BT.Version&"<br>" Response.Write BT.PlatForm&"<br>" %> <p align=center>獲得客戶端IP的方法</p> <% ‘‘此參數(shù)是取得透過(guò)代理服務(wù)器的客戶端IP IP=Request.ServerVariables("Http_X_ForWarded_For") If Len(IP)=0 Then Response.write "非代理服務(wù)器:空<p>" ‘‘直接取得客戶端的IP IP=Request.ServerVariables("Remote_Addr") Response.write "代理服務(wù)器:"&IP Else Response.write "非代理服務(wù)器:"&IP&"<p>" End If %> |
聯(lián)系客服