Вот почитал http://snippets.pp.ru/article/143 но не пойму как обновить(
Отображаеться база так ид опсос страна сокращение страны
98 Nar Mobile Азербайджан AZ
77.244.112.0 77.244.127.255
У меня в базе так
Вручную все обновить можно,но ет долго и геморно ,как хотяб зделать сверку с базой логофона что старое ,а чего нет?
или можна все автоматически обновить?
--
-- Структура таблицы `sportsoft_ip_base`
--
CREATE TABLE `sportsoft_ip_base` (
`oid` int(5) unsigned NOT NULL default '0',
`start` int(11) unsigned NOT NULL default '0',
`finish` int(11) unsigned NOT NULL default '0',
UNIQUE KEY `start` (`start`),
UNIQUE KEY `finish` (`finish`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `sportsoft_ip_base`
--
INSERT INTO `sportsoft_ip_base` VALUES (17, 1402273792, 1402290175);
INSERT INTO `sportsoft_ip_base` VALUES (17, 3251233792, 3251234815);
INSERT INTO `sportsoft_ip_base` VALUES (17, 3582031776, 3582031807);
INSERT INTO `sportsoft_ip_base` VALUES (17,
unt 11 unsigned ? зачем? при unsigned максимальное число будет из 10 символов
// http://xwab.mobi/forum/post353125#353125
suhonok, при int 10 unsigned не будут, т.к. он в 2 раза больше обычного int 11
ip2int('255.255.255.255') == 4294967295 == максимальное значение int 10 unsigned
Нет смысла вообще указывать количество символов для int. Он будет хранить столько, сколько влезет, а цифра эта влияет только на количество отображаемых символов
Когда IP хранят в виде целого, то пользуются функцией ip2long, так что там не "какашко", а вполне восстановимое число. Однако, это крайне не дальновидный подход, поскольку ipv6 так не конвертнёшь уже, а в 2011 нас как раз ждёт много работы в плане поддержки ipv6, потому что ipv4 адреса закончатся через пару месяцев.
В твоей структуре базы предусмотрено именно хранение ip2long (в моей тоже, мне тоже придётся переделывать её скоро).
По той ссылке, что ты написал, уже почти написан нужный тебе алгоритм. Значения start и finish это $range['ip1'] и $range['ip1'], а oid можно взять из $opsos['id'].