Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
ЗА помошь по PHP - Даю шоху! |

06.11.2009, 00:32
|
|
Banned
Регистрация: 26.06.2009
Сообщений: 38
Провел на форуме: 776456
Репутация:
42
|
|
ЗА помошь по PHP - Даю шоху!
Необходимо определять пользователь каторый зашол на сайт из РУ или нет.
|
|
|

06.11.2009, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,206
Провел на форуме: 4778940
Репутация:
1257
|
|
_ttp://www.maxmind.com/app/php
примеры там же. шоху ненадо.
|
|
|

06.11.2009, 01:01
|
|
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
Провел на форуме: 2603363
Репутация:
278
|
|
PHP код:
<?
$ip = getenv('REMOTE_ADDR');
$content = @file_get_contents('http://ipgeo-base.ru/?address='.$ip.'&search=%C8%F1%EA%E0%F2%FC');
if(strpos($content, "Санкт-Петербург")){
echo 'из питера';
}else{
echo ' не из питера';
}
?>
Работает
Последний раз редактировалось Deathdreams; 06.11.2009 в 01:08..
|
|
|

06.11.2009, 02:49
|
|
Участник форума
Регистрация: 10.09.2009
Сообщений: 120
Провел на форуме: 2212846
Репутация:
56
|
|
Через Remote Addr получаешь ип и через file get contents c сайта его парсишь и выводишь результат, например отсюда http://smart-ip.net/tools/geoip
Последний раз редактировалось Redwood; 06.11.2009 в 02:53..
|
|
|

06.11.2009, 10:49
|
|
Banned
Регистрация: 26.06.2009
Сообщений: 38
Провел на форуме: 776456
Репутация:
42
|
|
Сообщение от Redwood
Через Remote Addr получаешь ип и через file get contents c сайта его парсишь и выводишь результат, например отсюда http://smart-ip.net/tools/geoip
Можеш написать?
|
|
|

06.11.2009, 10:51
|
|
Участник форума
Регистрация: 24.08.2009
Сообщений: 145
Провел на форуме: 285318
Репутация:
17
|
|
А если есть возможность то качаешь либу geoip и подключаешь к серверу,и все отлично работает!
|
|
|

06.11.2009, 11:09
|
|
Banned
Регистрация: 26.06.2009
Сообщений: 38
Провел на форуме: 776456
Репутация:
42
|
|
Возможность есть. Можешеш помоч реализовать? Или пример покажи.
|
|
|

06.11.2009, 11:12
|
|
Участник форума
Регистрация: 24.08.2009
Сообщений: 145
Провел на форуме: 285318
Репутация:
17
|
|
К сожалению примера живого сейчас нет,но ссылка осталась:
http://pecl.php.net/package/geoip
Там и мануал где-то был!
|
|
|

06.11.2009, 11:59
|
|
Banned
Регистрация: 26.06.2009
Сообщений: 38
Провел на форуме: 776456
Репутация:
42
|
|
PHP код:
<?php
include("geoip.inc");
$gi = geoip_open("./GeoIP.dat",GEOIP_STANDARD);
$ip = getenv("REMOTE_ADDR");
$code = geoip_country_code_by_addr($gi, $ip);
geoip_close($gi);
if($code == "RU")
{ echo "<script>document.location='http://www.mail.ru'</script>";}
?>
Рабочий вариант=)
Последний раз редактировалось kiborgg; 06.11.2009 в 12:01..
|
|
|

06.11.2009, 12:03
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Сообщение от kiborgg
PHP код:
<?php
include("geoip.inc");
$gi = geoip_open("./GeoIP.dat",GEOIP_STANDARD);
$ip = getenv("REMOTE_ADDR");
$code = geoip_country_code_by_addr($gi, $ip);
geoip_close($gi);
if($code == "RU")
{ echo "<script>document.location='http://www.mail.ru'</script>";}
?>
Рабочий вариант=)
Не везде модуль geoip стоит
PHP код:
<?php
function CheckIP()
{
$ch = curl_init('http://api.hostip.info/get_html.php?ip='.$_SERVER['REMOTE_ADDR']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
if (preg_match('#Country: RUSSIAN FEDERATION (RU)#i', $res, $matches))
return true;
else
return false;
}
if(CheckIP())
{
echo 'Превед медвед, ты из России.';
}
else
{
echo 'Форбидден, акцесс тока русским.';
}
?>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|