PHP - IP'den Ülke Algılama

  • HyperFilter | DoS Protection | DDoS Protection | DoS Mitigation | DDoS Mitigation | AntiDoS | AntiDDoS | Proxy Shielding

AuraAura is verified member.

Administrator
Staff member
Administrator
Cuce Master
Joined
Mar 7, 2012
Messages
12,871
Reaction score
720
Points
113
Aşağıdaki kodları kilit ayar dosyanıza yada fonksiyon dosyasına ekleyin.

PHP:
[HIDE]

<?php 



/** 

* Country from IP Selector - Brought to you by Arda (SoulSmasher) 

* [url]http://www.soulsmasher.net[/url] 

* @author Roshan Bhattarai [url]http://roshanbh.com.np[/url] 

* @param str $ipAddr - Ip address to be checked 

* @return array ipDetail - an array about the ip 

*/ 

function countryCityFromIP($ipAddr) { 

ip2long($ipAddr)== -1 || ip2long($ipAddr) === false ? trigger_error("Invalid IP", E_USER_ERROR) : ""; 

$ipDetail=array(); //initialize a blank array 

//get the XML result from hostip.info 

$xml = file_get_contents("http://api.hostip.info/?ip=".$ipAddr); 

//get the city name inside the node <gml:name> and </gml:name> 

preg_match("@<Hostip>(\s)*<gml:name>(.*?)</gml:name>@si",$xml,$match); 

//assing the city name to the array 

//$ipDetail['city']=$match[2]; 

//get the country name inside the node <countryName> and </countryName> 

preg_match("@<countryName>(.*?)</countryName>@si",$xml,$matches); 

//assign the country name to the $ipDetail array 

$ipDetail['country']=$matches[1]; 

//get the country name inside the node <countryName> and </countryName> 

preg_match("@<countryAbbrev>(.*?)</countryAbbrev>@si",$xml,$cc_match); 

$ipDetail['country_code']=$cc_match[1]; //assing the country code to array 

//return the array containing city, country and country code 

return $ipDetail; 

} 





$IPDetail= countryCityFromIP($_SERVER['REMOTE_ADDR']); [/HIDE]
 
Back
Top Bottom
Reklam
Reklam