日期:2014-05-17  浏览次数:20858 次

如何获得客户端所在地区,例如“山东省青岛市”,小女重谢!请帮帮忙
1:用户访问我的网站的时候,我怎么获得客户端在什么地区。?
2:如何知道他是通过什么方式查看我的网站的,例如“直接输入地址”,“通过链接”等。?
3:如何获得客户端的分辨率?
4:如何获得客户端是什么操作系统,是什么样的浏览器?
很急,请帮帮忙!

------解决方案--------------------
1.通过IP,查IP资源库判断
2.检查HTTP_REFERER
3.用javascript,screen对象的width和height属性
4.用javascript,navigator对象的appCodeName,appName,appVersion...
------解决方案--------------------
1 自己写 类统计代码. 你需要的这些都可以从JS(操作DOM) 得到.
再写入到自己的数据库里.

2 用第三方统计系统.
唯一就是后台是第三方的.
所以,你需要写一个第三方的后台模拟登陆系统. 登陆上去.把数据抓下来存库也可以,直接显示也可以.

3 人工智能(花$...大洋)每天帮你更新数据库就OK了)


------解决方案--------------------
1:用户访问我的网站的时候,我怎么获得客户端在什么地区。?
由客户端IP地址.再查IP <-> 地址数据库 得到对方的地区.
2:如何知道他是通过什么方式查看我的网站的,例如“直接输入地址”,“通过链接”等。?
一般通过 Referer 来得到.但是不是很准确.因为,有些防火墙会挡掉 Referer 数据的发送.
3:如何获得客户端的分辨率?
一般用JS得到 window,document 对象属性.,计算得到.
4:如何获得客户端是什么操作系统,是什么样的浏览器?
客户端发送的POST数据包里带上了浏览器(MAYBE操作系统) 的信息. 请先学会GOOGLE 以及查阅相关RFC文档.
很急,请帮帮忙!


------解决方案--------------------
1:用户访问我的网站的时候,我怎么获得客户端在什么地区。?

取得IP地址,计算IP1*256^3+IP2*256^2+IP3*256^1+IP4*256^0,得到一个大整数,然后在纯真IP地址数据库中即可查到地区信息。

2:如何知道他是通过什么方式查看我的网站的,例如“直接输入地址”,“通过链接”等。?

严格来说是不可能区分的。

3:如何获得客户端的分辨率?

js: screen.width screen.height

4:如何获得客户端是什么操作系统,是什么样的浏览器?

navigator.appName 返回当前浏览器名称
navigator.appVersion 返回当前浏览器版本号
navigator.appCodeName 返回当前浏览器代码名字
navigator.userAgent 返回当前浏览器用户代标志

------解决方案--------------------
发一个IP地址归属地查询程序
<%
'#####################
' IP地址归属地查询程序
'#####################
dim IpLists,tip,sip1,sip2,sip3,sip4
IpLists = "127.0.|192.168. "
user_IP=request( "user_ip ")
if user_IP= " " then
user_IP = getIP()
end if

Function getIP()
Dim strIPAddr
If Request.ServerVariables( "HTTP_X_FORWARDED_FOR ") = " " OR InStr(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), "unknown ") > 0 Then
strIPAddr = Request.ServerVariables( "REMOTE_ADDR ")
ElseIf InStr(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), ", ") > 0 Then
strIPAddr = Mid(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), 1, InStr(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), ", ")-1)
ElseIf InStr(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), "; ") > 0 Then
strIPAddr = Mid(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), 1, InStr(Request.ServerVariables( "HTTP_X_FORWARDED_FOR "), "; ")-1)
Else
strIPAddr = Request.ServerVariables( "HTTP_X_FORWARDED_FOR ")
End If
getIP = Trim(Mid(strIPAddr, 1, 30))
End Function

Function cacuIp(user_IP)
On Error Resume Next
Dim srIp, aIp
srIp=0
aIp = Split(user_IP, ". ")
If UBound(aIP) <> 3 Then
cacuIP=0
Exit Function
End If
For i=0 To 3
srIp=srIp+(CInt(aIP(i))*(256^(3-i)))
Next
cacuIp=srIp-1
If Err Then cacuIp=0
End Function

function ipznum(ip)
dim uip
dim i,p,k
uip=split(ip, ". ")
ipznum=0
for i=0 to ubound(uip)
p=1
for k=1 to 3-i
p=p*256
next
ipznum=ipznum + p*uip(i)
next
end function