PDA

Просмотр полной версии : INET_ATON (mysql запрос)


kik8888
25.01.2009, 21:25
$sql=mysql_query("SELECT operator FROM inet_diapozon WHERE
INET_ATON('$_SERVER[REMOTE_ADDR]') >= start AND
INET_ATON('$_SERVER[REMOTE_ADDR]') <= finish LIMIT 1");
Запрос выбирает оператора из базы данных, путем проверки вхождения ip в диапазон ip оператора.
Что делает функция INET_ATON('$_SERVER[REMOTE_ADDR]') с айпишником?
Это функция php?

.Slip
25.01.2009, 21:33
http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_inet-aton

Трудно же бля в гугле эту функцию ввести и поискать, да?

kik8888
25.01.2009, 22:23
Все дошло до меня.
Вот аналоги на php, может кому пригодится.

<?

function inet_aton($ip){
$ip = ip2long($ip);
($ip < 0) ? $ip+=4294967296 : true;
return $ip;
}

function inet_ntoa($int){
// long2ip принимает на вход также беззнаковые
// INT, т.е. полностью идентичен inet_ntoa
return long2ip($int);
}

$ip=array();
$ip[]='255.255.255.255';
$ip[]='0.0.0.1';
$ip[]='0.0.0.0';
$ip[]='127.0.0.1';
$ip[]='251.56.5.210';
$ip[]='255.56.5.210';
$ip[]='10.0.0.1';
$ip[]='192.168.0.1';
$ip[]='191.168.0.1';
$ip[]='193.168.0.1';

foreach ($ip as $v){
echo $v." -> ".inet_aton($v)." | ".inet_aton($v)." -> ".inet_ntoa(inet_aton($v))."<br>\n\r";
}

?>