Jake Foley
Мой дом здесь!
- Регистрация
- 14 Дек 2006
- Сообщения
- 747
- Реакции
- 395
- Автор темы
- #1
Здравствуйте,
Просьба помочь в реализации скрипта который должен показывать флаг страны в зависимости от IP пользователя.
Перепробовал готовые решения, но ни одно из них не определяло все страны (часто был пустой флаг)
И вот я нашел кое что:
Определяет страну и берет флаг с папки flags.
Мне нужно показывать результат выполнения скрипта в виде
<img src="Для просмотра ссылки Войдиили Зарегистрируйся" />
Просьба помочь с реализацией.
Просьба помочь в реализации скрипта который должен показывать флаг страны в зависимости от IP пользователя.
Перепробовал готовые решения, но ни одно из них не определяло все страны (часто был пустой флаг)
И вот я нашел кое что:
PHP:
<?php
$ip2="91.197.17.233";
function whois($ip2){
error_reporting(0);
$url = 'whois.arin.net';
function whois0($url,$ip2)
{
$sock = fsockopen($url, 43, $errno, $errstr);
if (!$sock) exit("$errno($errstr)");
else
{
fputs ($sock, $ip2."\r\n");
$text = "";
while (!feof($sock))
{
$text .= fgets ($sock, 128)."<br>";
}
fclose ($sock);
$pattern = "|ReferralServer: whois://([^\n<:]+)|i";
preg_match($pattern, $text, $out);
if(!empty($out[1])) $rez = whois0($out[1], $ip2);
else $rez = $text;
$rez = eregi_replace( '(.*)<br>inetnum', 'inetnum',$rez);
$rez = eregi_replace( '<br>% Information related(.*)', '<br>',$rez);
return $rez;
}
}
$str0 = whois0($url,$ip2);
$str1 = eregi_replace( '(.*)country:', '',$str0);
$str1 = eregi_replace( '<br>(.*)', '',$str1);
$res5 = eregi_replace( ' ', '',$str1);
$res5 = strtolower($res5);
if(!($res5 ==''))
$res = '<img src="flags/' .$res5 .'.gif">';
return $res;
}
if(!empty($_POST['ip2'])) echo whois($_POST['ip2']);
?>
Определяет страну и берет флаг с папки flags.
Мне нужно показывать результат выполнения скрипта в виде
<img src="Для просмотра ссылки Войди
Просьба помочь с реализацией.