За последние 24 часа нас посетили 16603 программиста и 1650 роботов. Сейчас ищут 2024 программиста ...

IP2COUNTRY

Тема в разделе "MySQL", создана пользователем GvOzD, 16 июн 2008.

  1. GvOzD

    GvOzD Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    Скачал базу GeoIP вот от сюда http://php.ru/ip2country/ у меня есть собственная таблица, куда при каждом обращении к скрипту пишется информация о пользователи

    [sql]CREATE TABLE stats (
    id int(11) NOT NULL auto_increment,
    ip int(12) default '0',
    date datetime default NULL,
    agent varchar(200) default NULL,
    KEY id (id, ip, date)
    )[/sql]

    Хочу написать скрипт, который показывает количества записей на страну, например
    United Kingdom - 5
    Russian Federation - 20
    China - 10
    Помогите советом как это лучше сделать , можно конечно в цикле подсчитывать количество записей на ту или иную страну , но кажеться этот подход не правильный.

    P.S.
    Накидал один запрос , который в добавок ко всему и не работает :)
    [sql]SELECT geoip.country_name,count(stats.id) FROM stats LEFT JOIN geoip ON (stats.ip>geoip.start_long AND stats.ip<geoip.stop_long) GROUP BY geoip.country_name[/sql]
    Только камнями не кидать :)
     
  2. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    подсчитай 1 раз и выводи как html - код. или там число записей непрерывно меняется?
     
  3. GvOzD

    GvOzD Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    В таблицу за час около сотни записей может добавиться , так что отчёт динамически составлять придёться.Еще проблема в том, что в базе ip2country на каждую страну может быть десятки записей ,т.е. перечисляются подсети страны ,а не указан общий диапазон IP адресов