|
|
|
| Встал на проблеме написания скрипт который бы делал следующее:
к примеру есть какой нить айпи адрес:
xxx.xxx.xxx.xxx
как можно по нему определить город и страну? | |
|
|
|
|
|
|
|
для: ZetRider
(04.04.2006 в 23:06)
| | Если выяснять надо нечасто - путём запроса на whois. Если часто - лучше установить geoip. | |
|
|
|
|
|
|
|
для: Shorr Kan
(05.04.2006 в 00:14)
| | а поподробнее можно насчет geoip ? | |
|
|
|
|
|
|
|
для: ZetRider
(05.04.2006 в 00:16)
| | Это модуль апача. Поглядите phpinfo - есть ли там в Loaded Modules - mod_geoip ? | |
|
|
|
|
|
|
|
для: Shorr Kan
(05.04.2006 в 02:19)
| | не так и ненашел.. но наскоко я понимаю я должен буду иметь список всех стран? | |
|
|
|
|
|
|
|
для: ZetRider
(05.04.2006 в 05:32)
| | Нет. Вы будете получать страну текущего посетителя через переменные окружения. А именно -
$_SERVER["GEOIP_COUNTRY_CODE"]
$_SERVER["GEOIP_COUNTRY_NAME"]
первая - двухбуквенный код, вторая - тирада, в виде полного названия. | |
|
|
|
|
|
|
|
для: Shorr Kan
(05.04.2006 в 05:38)
| | вот нарык кое какую инфу...
http://www.maxmind.com/download/geoip/api/mod_geoip/mod_geoip_1.2.6/README.php
и
http://www.maxmind.com/download/geoip/api/mod_geoip/mod_geoip_1.2.6/mod_geoip.c
а как можно вывести значения:
<?
$_SERVER["GEOIP_COUNTRY_CODE"]
$_SERVER["GEOIP_COUNTRY_NAME"]
?>
|
?? | |
|
|
|
|
|
|
|
для: ZetRider
(05.04.2006 в 05:43)
| | >вот нарык кое какую инфу...
>http://www.maxmind.com/download/geoip/api/mod_geoip/mod_geoip_1.2.6/README.php
>и
>http://www.maxmind.com/download/geoip/api/mod_geoip/mod_geoip_1.2.6/mod_geoip.c
>
>а как можно вывести значения:
>
><?
>$_SERVER["GEOIP_COUNTRY_CODE"]
>$_SERVER["GEOIP_COUNTRY_NAME"]
>?>
>
|
>??
Проще некуда:
<?
print ($_SERVER["GEOIP_COUNTRY_CODE"]);
print ($_SERVER["GEOIP_COUNTRY_NAME"]);
?>
|
| |
|
|
|
|
|
|
|
для: Лебедев Роман
(05.04.2006 в 18:04)
| | Из любопытства.... а зачем скобки? Это просто ваш стиль или есть какое-то значение этому, как разница между одинарной кавычкой или двойной? | |
|
|
|
|
|
|
|
для: Shorr Kan
(05.04.2006 в 20:21)
| | вот так я писал:
<?
print ($_SERVER["GEOIP_COUNTRY_CODE"]);
print ($_SERVER["GEOIP_COUNTRY_NAME"]);
?>
|
у меня всеравно ниче невыводит! | |
|
|
|
|
|
|
|
для: ZetRider
(05.04.2006 в 22:25)
| | Посмотрите что есть вообще в суперглобальном массиве $_SERVER, распечатав его дамп
<?php
echo "<pre>";
pritn_r($_SERVER);
echo "</pre>";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(05.04.2006 в 23:43)
| | На локалхосте:
Array
(
[REDIRECT_STATUS] => 200
[HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 8.01
[HTTP_HOST] => localhost
[HTTP_ACCEPT] => text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
[HTTP_ACCEPT_LANGUAGE] => ru,en;q=0.9
[HTTP_ACCEPT_CHARSET] => windows-1251, utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1
[HTTP_ACCEPT_ENCODING] => deflate, gzip, x-gzip, identity, *;q=0
[HTTP_REFERER] => http://localhost/
[HTTP_CACHE_CONTROL] => no-cache
[HTTP_CONNECTION] => Keep-Alive, TE
[HTTP_TE] => deflate, gzip, chunked, identity, trailers
[PATH] => D:\\WINDOWS\\system32;D:\\WINDOWS;D:\\WINDOWS\\System32\\Wbem;D:\\Program Files\\Common Files\\Adobe\\AGL
[SystemRoot] => D:\\WINDOWS
[COMSPEC] => D:\\WINDOWS\\system32\\cmd.exe
[PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
[WINDIR] => D:\\WINDOWS
[SERVER_SIGNATURE] =>
Apache/2.0.52 (Win32) Server at localhost Port 80
[SERVER_SOFTWARE] => Apache/2.0.52 (Win32)
[SERVER_NAME] => localhost
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => F:/www
[SERVER_ADMIN] => localhost@127.0.0.1
[SCRIPT_FILENAME] => F:/php4/php.exe
[REMOTE_PORT] => 1099
[REDIRECT_URL] => /1.php
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /1.php
[SCRIPT_NAME] => /php4/php.exe
[PATH_INFO] => /1.php
[PATH_TRANSLATED] => F:\\www\\1.php
[PHP_SELF] => /1.php
[argv] => Array
(
)
[argc] => 0
)
|
На сервере:
Array
(
[DOCUMENT_ROOT] => /home/z-team.net.ru/data/htdocs
[HTTP_ACCEPT] => text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
[HTTP_ACCEPT_CHARSET] => windows-1251, utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1
[HTTP_ACCEPT_ENCODING] => deflate, gzip, x-gzip, identity, *;q=0
[HTTP_ACCEPT_LANGUAGE] => ru,en;q=0.9
[HTTP_CONNECTION] => Keep-Alive
[HTTP_HOST] => www.z-team.net.ru
[HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 8.01
[PATH] => /sbin:/bin:/usr/sbin:/usr/bin
[REMOTE_ADDR] => 62.133.182.104
[REMOTE_PORT] => 1114
[SCRIPT_FILENAME] => /home/z-team.net.ru/data/htdocs/1.php
[SERVER_ADDR] => 82.146.41.111
[SERVER_ADMIN] => zetrider@z-team.net.ru
[SERVER_NAME] => z-team.net.ru
[SERVER_PORT] => 80
[SERVER_SIGNATURE] =>
Apache/1.3.34 Server at z-team.net.ru Port 80
[SERVER_SOFTWARE] => Apache/1.3.34 (Unix) FrontPage/5.0.2.2623 PHP/4.4.2 mod_ssl/2.8.25 OpenSSL/0.9.7d-p1
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /1.php
[SCRIPT_NAME] => /1.php
[PATH_TRANSLATED] => /home/z-team.net.ru/data/htdocs/1.php
[PHP_SELF] => /1.php
[argv] => Array
(
)
[argc] => 0
)
|
| |
|
|
|
|
|
|
|
для: ZetRider
(06.04.2006 в 11:56)
| | GeoIPEnable On
GeoIPDBFile /path/to/GeoIP.dat
это - в .htaccess
а лучше - в конфиг апача, так как когда это у меня было в .htaccess - работало ненадежно. Перенес в конфиг апача - стало славно. | |
|
|
|