EOMY.NET
Хостинг EOMY.NET: Форум поддержки
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
RSS Feed  

lp2long, глюк.

 
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB
lp2long, глюк.
Автор Сообщение
lazutov
while (1==1);
Последний герой


Зарегистрирован: 30.04.2007
Сообщения: 3840

111220 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:13    Заголовок сообщения: lp2long, глюк. Ответить с цитатой

Я начал работать с IPgeoBase и заметил такой баг:
$ip='213.172.3.14';
$ip=ip2long($ip);
echo $ip;

результ: -710147314

Я так понимаю число ушло за максимум integer для php.
Что можно сделать с этим? Может попросить хостера что-либо подправить(помню что-то настраивалось средствами сервера/ядра)?
_________________
сервис DNS | разные http, DNS и прочие утилиты
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
[LP]LordPro.teus
Призрак Лорда
Призрак Лорда


Зарегистрирован: 26.07.2007
Сообщения: 5092

42282 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:19    Заголовок сообщения: Ответить с цитатой

lazutov
возможно, стоит использовать double?..
_________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
lazutov
while (1==1);
Последний герой


Зарегистрирован: 30.04.2007
Сообщения: 3840

111220 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:23    Заголовок сообщения: Ответить с цитатой

1) это примерно 3585032192
2) а в какое место ?
Код:
function get_c($ip){
   global $con;
   global $sql_pref;
   settype($nn,'double');
   $nn=ip2long($ip);
   $q="SELECT cname FROM ".$sql_pref."geoip WHERE '".$nn."' >= nn_start AND '".$nn."' <= nn_finish";
   if (!($res=mysql_query($q,$con)))  echo mysql_error();
   $row=mysql_fetch_row($res); print_r($row);
   return  $nn.$row['0'];
}
echo get_c('213.172.3.14');

PS сама конструкция при меньших IP работает.
_________________
сервис DNS | разные http, DNS и прочие утилиты
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
madhamster
Согнул ложку
Согнул ложку


Зарегистрирован: 09.10.2006
Сообщения: 902

432 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:25    Заголовок сообщения: Ответить с цитатой

Код:

$ip='213.172.3.14';
$ip=ip2long($ip);
$ip=sprintf('%u', $ip);
echo $ip;

_________________
NextStage - live music competition
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
lazutov
while (1==1);
Последний герой


Зарегистрирован: 30.04.2007
Сообщения: 3840

111220 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:27    Заголовок сообщения: Ответить с цитатой

madhamster
Спасибо!
Цитата:
Array ( [0] => Russian Federation ) 3584819982Russian Federation

_________________
сервис DNS | разные http, DNS и прочие утилиты
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
madhamster
Согнул ложку
Согнул ложку


Зарегистрирован: 09.10.2006
Сообщения: 902

432 Монеты

СообщениеДобавлено: Ср, 04 Июн, 2008 16:33    Заголовок сообщения: Ответить с цитатой

Кстати если что, то MySQL 5 поддерживает функцию типа ip2long только там они называются INET_ATON() и обратная INET_NTOA()
_________________
NextStage - live music competition
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB Часовой пояс: GMT
Страница 1 из 1

 


EOMY TOP 100 Rambler's Top100   Рейтинг@Mail.ru    



Powered by phpBB © 2001, 2005 phpBB Group


Рейтинг SIMPLETOP.NET