Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何记录用户的ISP主机名_Php_Ip - Fatal编程技术网

Php 如何记录用户的ISP主机名

Php 如何记录用户的ISP主机名,php,ip,Php,Ip,我目前有一个网站,用户可以购买不同的软件包,但是,我不希望用户免费传递他们的会员资格,因此我想实施一些不允许他们这样做的措施,例如IP锁、ISP锁或其他建议,将其锁定到他们登录的第一台计算机/笔记本电脑和登录的第一部电话,这样他们就可以与尝试登录的任何其他人一起使用,只需输出一条错误消息,告知他们无法登录。我更希望在PHP中实现类似的东西 有人有什么想法或建议吗? 谢谢您可以通过以下代码获得所有这些信息: <?php $ip=$_SERVER['REMOTE_ADDR']; $url=fi

我目前有一个网站,用户可以购买不同的软件包,但是,我不希望用户免费传递他们的会员资格,因此我想实施一些不允许他们这样做的措施,例如IP锁、ISP锁或其他建议,将其锁定到他们登录的第一台计算机/笔记本电脑和登录的第一部电话,这样他们就可以与尝试登录的任何其他人一起使用,只需输出一条错误消息,告知他们无法登录。我更希望在PHP中实现类似的东西

有人有什么想法或建议吗?
谢谢

您可以通过以下代码获得所有这些信息:

<?php
$ip=$_SERVER['REMOTE_ADDR'];
$url=file_get_contents("http://whatismyipaddress.com/ip/$ip");
preg_match_all('/<th>(.*?)<\/th><td>(.*?)<\/td>/s',$url,$output,PREG_SET_ORDER);
$isp=$output[1][2];
$city=$output[9][2];
$state=$output[8][2];
$zipcode=$output[12][2];
$country=$output[7][2];
?>


那么你想惩罚合法用户,以便抓捕滥用者?如果您实现的系统中每个用户只允许一个并发会话,那么这可能是最明智的解决方案。如果你用手机登录,你每次都可以得到不同的IP。人们经常使用不同的WiFi(使用不同的ISP,如家庭、工作、朋友场所等)。如果我在你这里有一个帐户,我不会呆太久,因为除了我的第一个注册设备,我不能使用任何其他设备。这是一种限制你产品使用的疯狂方式。我会探索其他方法。相信我,这个想法不会轻易流行。你可能会让许多用户使用相同的IP地址,通过虚拟路由到internet,即通过办公网络。您可能会考虑IP地址的反向地理编码,然后记录每个登录发生的地理区域-如果用户频繁地移动,您可能会认为这是滥用。如果您跟踪用户代理(浏览器),您可能也可以使用它来提供有关给定ID是否被滥用的更多信息。我会小心确保你有一个机制让用户轻松解锁,因为你设计的任何东西都会有合法的情况。