如何解决在网页上显示用户代理信息和地理数据
如何向网络访问者动态显示用户代理信息和地理数据?
我遇到了以下代码来获取有关网络访问者的地理信息: www.artisansweb.net/find-geolocation-using-ip-address-for-free-in-php/
<?php
$ip_address = getUserIpAddr();
$url = "https://api.ipgeolocationapi.com/geolocate/$ip_address";
$ch = curl_init();
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_URL,$url);
$response = curl_exec($ch);
$arr_result = json_decode($response);
print_r($arr_result);
我不想存储信息,而是要动态地为 Web vitistor 回显它,以便用户可以在网页上看到她/他的信息。
它应该类似于 www.tracemyip.org/
如果可能,我想显示以下信息:
- IP 地址**
- 国家
- 城市
- ISP
- 浏览器***
- 设备(详细到 可能)
- 推荐网站
如果可能,我希望将所有内容都包含在一个脚本中,并且显示效果很好,例如: www.home.neustar/resources/tools/ip-geolocation-lookup-tool
另外,可以不用json直接用echo显示吗?
如果有人可以帮助我,我将不胜感激。非常感谢。
** IP 地址 - 我目前使用以下脚本:
<?php
//whether ip is from share internet
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip_address = $_SERVER['HTTP_CLIENT_IP'];
}
//whether ip is from proxy
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip_address = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
//whether ip is from remote address
else
{
$ip_address = $_SERVER['REMOTE_ADDR'];
}
echo $ip_address;
?>
*** 浏览器 - 我目前使用以下脚本:
<?php
$agent = $_SERVER["HTTP_USER_AGENT"];
if( preg_match('/MSIE (\d+\.\d+);/',$agent) ) {
echo "You're using Internet Explorer - Your IP address is: ";
} else if (preg_match('/Chrome[\/\s](\d+\.\d+)/',$agent) ) {
echo "You're using Chrome | Your IP address is: ";
} else if (preg_match('/Edge\/\d+/',$agent) ) {
echo "You're using Edge | Your IP address is: ";
} else if ( preg_match('/Firefox[\/\s](\d+\.\d+)/',$agent) ) {
echo "You're using Firefox | Your IP address is: ";
} else if ( preg_match('/OPR[\/\s](\d+\.\d+)/',$agent) ) {
echo "You're using Opera | Your IP address is: ";
} else if (preg_match('/Safari[\/\s](\d+\.\d+)/',$agent) ) {
echo "You're using Safari | Your IP address is: ";
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。