$ipaddress = $_SERVER['REMOTE_ADDR']; //$ipaddress = $_SERVER['REMOTE_ADDR']; //$ipaddress1 ='219.75.27.16'; //singapore //$ipaddress2 ='122.176.28.80'; // india function geoCheckIP($ip) { $response = @file_get_contents('http://www.netip.de/search?query=' . $ip); $patterns = array(); $patterns["country"] = '#Country: (.*?) #i'; $ipInfo = array(); foreach ($patterns as $key => $pattern) { $ipInfo[$key] = preg_match($pattern, $response, $value) && !empty($value[1]) ? $value[1] : 'not found'; } return $ipInfo; } $data = geoCheckIP($ipaddress); $country = $data['country']; //echo '<br/><br/>'; $new_ar = substr($country, 0, 2); //echo $country= $data->country; ?> <!doctype html> <html lang="en" class="theme-b has-gradient has-pattern"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Social Circle - Customised facebook apps & Social Media Campaigns</title> <meta name="description" content=""> <meta name="keywords" content=""> <meta name="HandheldFriendly" content="true"> <meta name="MobileOptimized" content="320">
<?php $ip = $_SERVER['REMOTE_ADDR']; echo $ip . "<br>"; print_r(geoCheckIP($ip)); //Array ( [domain] => dslb-094-219-040-096.pools.arcor-ip.net [country] => DE - Germany [state] => Hessen [town] => Erzhausen ) //Get an array with geoip-infodata function geoCheckIP($ip) { //check, if the provided ip is valid if (!filter_var($ip, FILTER_VALIDATE_IP)) { throw new InvalidArgumentException("IP is not valid"); } //contact ip-server $response = @file_get_contents('http://www.netip.de/search?query=' . $ip); if (empty($response)) { throw new InvalidArgumentException("Error contacting Geo-IP-Server"); } //Array containing all regex-patterns necessary to extract ip-geoinfo from page $patterns = array(); $patterns["domain"] = '#Domain: (.*?) #i'; $patterns["country"] = '#Country: (.*?) #i'; $patterns["state"] = '#State/Region: (.*?)<br#i'; $patterns["town"] = '#City: (.*?)<br#i'; //Array where results will be stored $ipInfo = array(); //check response from ipserver for above patterns foreach ($patterns as $key => $pattern) { //store the result in array $ipInfo[$key] = preg_match($pattern, $response, $value) && !empty($value[1]) ? $value[1] : 'not found'; }