Skocz do zawartości

Sprawdzenie kraju z jakiego jest USER


Maximus Marius

Rekomendowane odpowiedzi

Ktoś może mi podpowiedzieć jak za pomocą kawałka PHP sprawdzić z jakiego kraju jest USER ?

Od razu napiszę że metody z REV DNS od razu odrzucam bo firma udostępniająca internet czesto wpisuje tam COM , NET lub jeszcze coś innego.

Są gdzieś jakieś ogólno dostępne bazy danych gdzie jest przypisany IP <-> KRAJ

Tu coś znalazłem: www.codedcode.com/php/iptocountry/the_script.asp

Co do wiarygodności rozwiązania to trudno powiedzieć ;)

Odnośnik do komentarza
Udostępnij na innych stronach

To rozwiazanie qwertyuiop wymagało by przekompilowanie PHP a nie zawsze da radę ;)

Ale idąc za ciosem widzę ze Ci co tworzą bazę geoip udostępniają też API w czystym PHP (nie trzeba zadnych extra modułów)

https://www.maxmind.com/download/geoip/api/php/

Odnośnik do komentarza
Udostępnij na innych stronach

Zapisz jako country.php i zrób include:

<?php
function country($ip)
{
$tablica = explode('.', $ip);
$revip = "$tablica[3].$tablica[2].$tablica[1].$tablica[0]";
$ret = gethostbyname($revip.'.zz.countries.nerd.dk');
switch($ret)
{
case '127.0.0.20': return 'AD'; break;
case '127.0.3.16': return 'AE'; break;
case '127.0.0.4': return 'AF'; break;
case '127.0.0.28': return 'AG'; break;
case '127.0.2.148': return 'AI'; break;
case '127.0.0.8': return 'AL'; break;
case '127.0.0.51': return 'AM'; break;
case '127.0.2.18': return 'AN'; break;
case '127.0.0.24': return 'AO'; break;
case '127.0.0.10': return 'AQ'; break;
case '127.0.0.32': return 'AR'; break;
case '127.0.0.16': return 'AS'; break;
case '127.0.0.40': return 'AT'; break;
case '127.0.0.36': return 'AU'; break;
case '127.0.2.21': return 'AW'; break;
case '127.0.0.31': return 'AZ'; break;
case '127.0.0.70': return 'BA'; break;
case '127.0.0.52': return 'BB'; break;
case '127.0.0.50': return 'BD'; break;
case '127.0.0.56': return 'BE'; break;
case '127.0.3.86': return 'BF'; break;
case '127.0.0.100': return 'BG'; break;
case '127.0.0.48': return 'BH'; break;
case '127.0.0.108': return 'BI'; break;
case '127.0.0.204': return 'BJ'; break;
case '127.0.0.60': return 'BM'; break;
case '127.0.0.96': return 'BN'; break;
case '127.0.0.68': return 'BO'; break;
case '127.0.0.76': return 'BR'; break;
case '127.0.0.44': return 'BS'; break;
case '127.0.0.64': return 'BT'; break;
case '127.0.0.74': return 'BV'; break;
case '127.0.0.72': return 'BW'; break;
case '127.0.0.112': return 'BY'; break;
case '127.0.0.84': return 'BZ'; break;
case '127.0.0.124': return 'CA'; break;
case '127.0.0.166': return 'CC'; break;
case '127.0.0.140': return 'CF'; break;
case '127.0.0.178': return 'CG'; break;
case '127.0.2.244': return 'CH'; break;
case '127.0.1.128': return 'CI'; break;
case '127.0.0.184': return 'CK'; break;
case '127.0.0.152': return 'CL'; break;
case '127.0.0.120': return 'CM'; break;
case '127.0.0.156': return 'CN'; break;
case '127.0.0.170': return 'CO'; break;
case '127.0.0.188': return 'CR'; break;
case '127.0.0.192': return 'CU'; break;
case '127.0.0.132': return 'CV'; break;
case '127.0.0.162': return 'CX'; break;
case '127.0.0.196': return 'CY'; break;
case '127.0.0.203': return 'CZ'; break;
case '127.0.1.20': return 'DE'; break;
case '127.0.1.6': return 'DJ'; break;
case '127.0.0.208': return 'DK'; break;
case '127.0.0.212': return 'DM'; break;
case '127.0.0.214': return 'DO'; break;
case '127.0.0.12': return 'DZ'; break;
case '127.0.0.218': return 'EC'; break;
case '127.0.0.233': return 'EE'; break;
case '127.0.3.50': return 'EG'; break;
case '127.0.2.220': return 'EH'; break;
case '127.0.0.232': return 'ER'; break;
case '127.0.2.212': return 'ES'; break;
case '127.0.0.231': return 'ET'; break;
case '127.0.0.246': return 'FI'; break;
case '127.0.0.242': return 'FJ'; break;
case '127.0.0.238': return 'FK'; break;
case '127.0.2.71': return 'FM'; break;
case '127.0.0.234': return 'FO'; break;
case '127.0.0.250': return 'FR'; break;
case '127.0.0.249': return 'FX'; break;
case '127.0.1.10': return 'GA'; break;
case '127.0.3.58': return 'GB'; break;
case '127.0.1.52': return 'GD'; break;
case '127.0.1.12': return 'GE'; break;
case '127.0.0.254': return 'GF'; break;
case '127.0.1.32': return 'GH'; break;
case '127.0.1.36': return 'GI'; break;
case '127.0.1.48': return 'GL'; break;
case '127.0.1.14': return 'GM'; break;
case '127.0.1.68': return 'GN'; break;
case '127.0.1.56': return 'GP'; break;
case '127.0.0.226': return 'GQ'; break;
case '127.0.1.44': return 'GR'; break;
case '127.0.0.239': return 'GS'; break;
case '127.0.1.64': return 'GT'; break;
case '127.0.1.60': return 'GU'; break;
case '127.0.2.112': return 'GW'; break;
case '127.0.1.72': return 'GY'; break;
case '127.0.1.88': return 'HK'; break;
case '127.0.1.78': return 'HM'; break;
case '127.0.1.84': return 'HN'; break;
case '127.0.0.191': return 'HR'; break;
case '127.0.1.76': return 'HT'; break;
case '127.0.1.92': return 'HU'; break;
case '127.0.1.104': return 'ID'; break;
case '127.0.1.116': return 'IE'; break;
case '127.0.1.120': return 'IL'; break;
case '127.0.1.100': return 'IN'; break;
case '127.0.0.86': return 'IO'; break;
case '127.0.1.112': return 'IQ'; break;
case '127.0.1.108': return 'IR'; break;
case '127.0.1.96': return 'IS'; break;
case '127.0.1.124': return 'IT'; break;
case '127.0.1.132': return 'JM'; break;
case '127.0.1.144': return 'JO'; break;
case '127.0.1.136': return 'JP'; break;
case '127.0.1.148': return 'KE'; break;
case '127.0.1.161': return 'KG'; break;
case '127.0.0.116': return 'KH'; break;
case '127.0.1.40': return 'KI'; break;
case '127.0.0.174': return 'KM'; break;
case '127.0.2.147': return 'KN'; break;
case '127.0.1.152': return 'KP'; break;
case '127.0.1.154': return 'KR'; break;
case '127.0.1.158': return 'KW'; break;
case '127.0.0.136': return 'KY'; break;
case '127.0.1.142': return 'KZ'; break;
case '127.0.1.162': return 'LA'; break;
case '127.0.1.166': return 'LB'; break;
case '127.0.2.150': return 'LC'; break;
case '127.0.1.182': return 'LI'; break;
case '127.0.0.144': return 'LK'; break;
case '127.0.1.174': return 'LR'; break;
case '127.0.1.170': return 'LS'; break;
case '127.0.1.184': return 'LT'; break;
case '127.0.1.186': return 'LU'; break;
case '127.0.1.172': return 'LV'; break;
case '127.0.1.178': return 'LY'; break;
case '127.0.1.248': return 'MA'; break;
case '127.0.1.236': return 'MC'; break;
case '127.0.1.242': return 'MD'; break;
case '127.0.1.194': return 'MG'; break;
case '127.0.2.72': return 'MH'; break;
case '127.0.3.39': return 'MK'; break;
case '127.0.1.210': return 'ML'; break;
case '127.0.0.104': return 'MM'; break;
case '127.0.1.240': return 'MN'; break;
case '127.0.1.190': return 'MO'; break;
case '127.0.2.68': return 'MP'; break;
case '127.0.1.218': return 'MQ'; break;
case '127.0.1.222': return 'MR'; break;
case '127.0.1.244': return 'MS'; break;
case '127.0.1.214': return 'MT'; break;
case '127.0.1.224': return 'MU'; break;
case '127.0.1.206': return 'MV'; break;
case '127.0.1.198': return 'MW'; break;
case '127.0.1.228': return 'MX'; break;
case '127.0.1.202': return 'MY'; break;
case '127.0.1.252': return 'MZ'; break;
case '127.0.2.4': return 'NA'; break;
case '127.0.2.28': return 'NC'; break;
case '127.0.2.50': return 'NE'; break;
case '127.0.2.62': return 'NF'; break;
case '127.0.2.54': return 'NG'; break;
case '127.0.2.46': return 'NI'; break;
case '127.0.2.16': return 'NL'; break;
case '127.0.2.66': return 'NO'; break;
case '127.0.2.12': return 'NP'; break;
case '127.0.2.8': return 'NR'; break;
case '127.0.2.58': return 'NU'; break;
case '127.0.2.42': return 'NZ'; break;
case '127.0.2.0': return 'OM'; break;
case '127.0.2.79': return 'PA'; break;
case '127.0.2.92': return 'PE'; break;
case '127.0.1.2': return 'PF'; break;
case '127.0.2.86': return 'PG'; break;
case '127.0.2.96': return 'PH'; break;
case '127.0.2.74': return 'PK'; break;
case '127.0.2.104': return 'PL'; break;
case '127.0.2.154': return 'PM'; break;
case '127.0.2.100': return 'PN'; break;
case '127.0.2.118': return 'PR'; break;
case '127.0.2.108': return 'PT'; break;
case '127.0.2.73': return 'PW'; break;
case '127.0.2.88': return 'PY'; break;
case '127.0.2.122': return 'QA'; break;
case '127.0.2.126': return 'RE'; break;
case '127.0.2.130': return 'RO'; break;
case '127.0.2.131': return 'RU'; break;
case '127.0.2.134': return 'RW'; break;
case '127.0.2.170': return 'SA'; break;
case '127.0.0.90': return 'SB'; break;
case '127.0.2.178': return 'SC'; break;
case '127.0.2.224': return 'SD'; break;
case '127.0.2.240': return 'SE'; break;
case '127.0.2.190': return 'SG'; break;
case '127.0.2.142': return 'SH'; break;
case '127.0.2.193': return 'SI'; break;
case '127.0.2.232': return 'SJ'; break;
case '127.0.2.191': return 'SK'; break;
case '127.0.2.182': return 'SL'; break;
case '127.0.2.162': return 'SM'; break;
case '127.0.2.174': return 'SN'; break;
case '127.0.2.194': return 'SO'; break;
case '127.0.2.228': return 'SR'; break;
case '127.0.2.166': return 'ST'; break;
case '127.0.0.222': return 'SV'; break;
case '127.0.2.248': return 'SY'; break;
case '127.0.2.236': return 'SZ'; break;
case '127.0.3.28': return 'TC'; break;
case '127.0.0.148': return 'TD'; break;
case '127.0.1.4': return 'TF'; break;
case '127.0.3.0': return 'TG'; break;
case '127.0.2.252': return 'TH'; break;
case '127.0.2.250': return 'TJ'; break;
case '127.0.3.4': return 'TK'; break;
case '127.0.3.27': return 'TM'; break;
case '127.0.3.20': return 'TN'; break;
case '127.0.3.8': return 'TO'; break;
case '127.0.2.114': return 'TP'; break;
case '127.0.3.24': return 'TR'; break;
case '127.0.3.12': return 'TT'; break;
case '127.0.3.30': return 'TV'; break;
case '127.0.0.158': return 'TW'; break;
case '127.0.3.66': return 'TZ'; break;
case '127.0.3.36': return 'UA'; break;
case '127.0.3.32': return 'UG'; break;
case '127.0.3.58': return 'UK'; break;
case '127.0.2.69': return 'UM'; break;
case '127.0.3.72': return 'US'; break;
case '127.0.3.90': return 'UY'; break;
case '127.0.3.92': return 'UZ'; break;
case '127.0.1.80': return 'VA'; break;
case '127.0.2.158': return 'VC'; break;
case '127.0.3.94': return 'VE'; break;
case '127.0.0.92': return 'VG'; break;
case '127.0.3.82': return 'VI'; break;
case '127.0.2.192': return 'VN'; break;
case '127.0.2.36': return 'VU'; break;
case '127.0.3.108': return 'WF'; break;
case '127.0.3.114': return 'WS'; break;
case '127.0.3.119': return 'YE'; break;
case '127.0.0.175': return 'YT'; break;
case '127.0.3.123': return 'YU'; break;
case '127.0.2.198': return 'ZA'; break;
case '127.0.3.126': return 'ZM'; break;
case '127.0.0.180': return 'ZR'; break;
case '127.0.2.204': return 'ZW'; break;
default: return ''; break;
}
}
?>

Funkcja country($_SERVER['REMOTE_ADDR']) zwróci kraj usera.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności