|
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 
|
|
| Вернуться к началу |
|
 |
madhamster Согнул ложку


Зарегистрирован: 09.10.2006 Сообщения: 902
432 
|
Добавлено: Ср, 04 Июн, 2008 16:33 Заголовок сообщения: |
|
|
Кстати если что, то MySQL 5 поддерживает функцию типа ip2long только там они называются INET_ATON() и обратная INET_NTOA() _________________ NextStage - live music competition |
|
| Вернуться к началу |
|
 |
|