Intereting Posts
createUrl Yii – следует ли нам называть его на контроллере или не имеет значения? Настройка HTTPS для поддомена подстановочных знаков на локальном хосте Как отформатировать дату на странице листинга Керл и печенье Функция plugins_url () WordPress не работает на общем хостинге Произошла ошибка клиента: Не удалось создать каталог хранения: / tmp / Google_Client / 00 Doctrine 2.0 ReflectionException, когда я пытаюсь сделать YAML-сопоставление Как использовать подпапку в маршруте контроллера по умолчанию в CodeIgniter 3 Как преобразовать строку utf-8 в строку utf-16 в PHP Есть ли у кого-нибудь рекомендации для хорошей (и легкой!) Библиотеки почтовых программ PHP? PHP Image Resize / Relocate – Ускорение Изображение, созданное с помощью blob, содержит только числа и запятые почему нам все еще нужен родительский конструктор, когда класс контроллера расширяет родительский контроллер? Почему «PHP не удается сломать / продолжить 1 уровень»? Twilio PHP – сертификат SSL: самоподписанный сертификат в цепочке сертификатов

php geo ip loc не работает

http://chir.ag/projects/geoiploc/

Привет, я пытаюсь установить это, но всякий раз, когда я использую include("geoiploc.php"); страница include("geoiploc.php"); и всякий раз, когда я include("geoiploc.php"); Я вижу только свой IP-адрес. Я загрузил geoiploc.php и index.php на веб-хост, который может запускать PHP.

Если есть ЛЮБОЙ другой более простой способ показать название страны по IP или любым другим способом, что это такое? Пожалуйста, мне нужно это быстро

Как я уже сказал, он показывает только IP-адрес, когда я include("geoiploc.php"); Зачем?

Вам нужна эта библиотека: http://chir.ag/projects/geoiploc/autogen/geoiploc.tar.gz, и это код для запуска скрипта:

 include("geoiploc.php"); // Must include this // ip must be of the form "192.168.1.100" // you may load this from a database $ip = $_SERVER["REMOTE_ADDR"]; echo "Your IP Address is: " . $ip . "<br />"; echo "Your Country is: "; // returns country code by default echo getCountryFromIP($ip); echo "<br />\n"; // optionally, you can specify the return type // type can be "code" (default), "abbr", "name" echo "Your Country Code is: "; echo getCountryFromIP($ip, "code"); echo "<br />\n"; // print country abbreviation - case insensitive echo "Your Country Abbreviation is: "; echo getCountryFromIP($ip, "AbBr"); echo "<br />\n"; // full name of country - spaces are trimmed echo "Your Country Name is: "; echo getCountryFromIP($ip, " NamE "); echo "<br />\n"; в include("geoiploc.php"); // Must include this // ip must be of the form "192.168.1.100" // you may load this from a database $ip = $_SERVER["REMOTE_ADDR"]; echo "Your IP Address is: " . $ip . "<br />"; echo "Your Country is: "; // returns country code by default echo getCountryFromIP($ip); echo "<br />\n"; // optionally, you can specify the return type // type can be "code" (default), "abbr", "name" echo "Your Country Code is: "; echo getCountryFromIP($ip, "code"); echo "<br />\n"; // print country abbreviation - case insensitive echo "Your Country Abbreviation is: "; echo getCountryFromIP($ip, "AbBr"); echo "<br />\n"; // full name of country - spaces are trimmed echo "Your Country Name is: "; echo getCountryFromIP($ip, " NamE "); echo "<br />\n"; 

    Вы можете использовать бесплатный MaxMind Geo Lite. Загрузите файлы здесь: http://www.maxmind.com/download/geoip/api/php/php-latest.tar.gz

    Затем загрузите базу данных Geo Country здесь: http://dev.maxmind.com/geoip/legacy/geolite

    Теперь вы можете использовать его так:

     <?php include("geoip.inc"); function ipAddress(){ if (!empty($_SERVER['HTTP_CLIENT_IP'])){ //check ip from share internet $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ // proxy pass ip $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $gi = geoip_open("path/to/GeoIP.dat",GEOIP_STANDARD); echo geoip_country_name_by_addr($gi, ipAddress()); // echo geoip_country_code_by_addr($gi, ipAddress()); <-- country code geoip_close($gi); ?> в <?php include("geoip.inc"); function ipAddress(){ if (!empty($_SERVER['HTTP_CLIENT_IP'])){ //check ip from share internet $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ // proxy pass ip $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $gi = geoip_open("path/to/GeoIP.dat",GEOIP_STANDARD); echo geoip_country_name_by_addr($gi, ipAddress()); // echo geoip_country_code_by_addr($gi, ipAddress()); <-- country code geoip_close($gi); ?> 

    UPDATE: чтобы получить город пользователя, вы должны загрузить верхнюю ссылку и найти файл sample_city.php чтобы увидеть пример кода. Вам необходимо загрузить этот файл: http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz и поместить его в тот же каталог, что и ваш php-файл. Быстрый пример:

     <?php include("geoipcity.inc"); function ipAddress(){ if (!empty($_SERVER['HTTP_CLIENT_IP'])){ //check ip from share internet $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ // proxy pass ip $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $gi = geoip_open("GeoIPCity.dat",GEOIP_STANDARD); $record = geoip_record_by_addr($gi,ipAddress()); print $record->country_code . " " . $record->country_code3 . " " . $record->country_name . "\n"; geoip_close($gi); ?> в <?php include("geoipcity.inc"); function ipAddress(){ if (!empty($_SERVER['HTTP_CLIENT_IP'])){ //check ip from share internet $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ // proxy pass ip $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $gi = geoip_open("GeoIPCity.dat",GEOIP_STANDARD); $record = geoip_record_by_addr($gi,ipAddress()); print $record->country_code . " " . $record->country_code3 . " " . $record->country_name . "\n"; geoip_close($gi); ?>