Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
В последнее время на многих ресурсах используется география. У меня есть база созданная на основе maxmind geoip для России в формате ГОРОД, РЕГИОН, ФО, ДОЛГОТА, ШИРОТА, НАСЕЛЕНИЕ.
Если ее прикрутить к профилю, то можно будет сделать визуальную карту участников форума. Думаю многим это было бы интересно, так как черныш не та порода, что вышел и на улице нашел соплеменников. |
|
В начало страницы |
|
|
agness
На форуме с 11.02.2009 Сообщений: 1155 Москва-Калининград
|
|
поддерживаю! и так будет видно сколько чернышачих хозяев живет в регионе. _________________ У меня была собака, я её любила,
Она съела кусок мяса - я её любила,
Она писала на коврик - я её любила,
Она тапочки сожрала - я её любила.
Я спросила ту собаку: "Видишь, всё терплю?"
И ответила собака: "Я тебя ЛЮБЛЮ!"/©/ |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
Для админа чисто технически это не сложно. Никаких модулей не нужно. Дам готовый скрипт и базу geoip, которая будет автоматом определять откуда человек и конвертировать в человеческий вид навроде для нас "Апатиты, Мурманская область, СЗФО".
Чтобы это дело не ело ресурсов скрипт спрашивает локацию один раз, а дальше хранит в куке город.
Все это дело написано на php.
Если есть возможность прикрутить memcached - то время на определение большинства крупных городов будет равно 0.00 секунд :)
Как это работает можно тут глянуть для России http://www.taxionmap.ru/ |
|
В начало страницы |
|
|
Капитан
На форуме с 30.12.2006 Сообщений: 63518 Москва
|
|
LEO111 писал(а): | В последнее время на многих ресурсах используется география. У меня есть база созданная на основе maxmind geoip для России в формате ГОРОД, РЕГИОН, ФО, ДОЛГОТА, ШИРОТА, НАСЕЛЕНИЕ.
Если ее прикрутить к профилю, то можно будет сделать визуальную карту участников форума. Думаю многим это было бы интересно, так как черныш не та порода, что вышел и на улице нашел соплеменников. |
Интересно! |
|
В начало страницы |
|
|
Агар
На форуме с 11.12.2006 Сообщений: 10814
|
|
А почему нет, следующим шагом World Tracker внедрить. |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
Агар, обещанный Sirf IV выйдет, чтобы мог от часовой батарейки работать неделю и в ошейник помещался - можно и его прикрутить :) |
|
В начало страницы |
|
|
Агар
На форуме с 11.12.2006 Сообщений: 10814
|
|
Он уже вышел, а с ним и Tenex 50-S - GPS-навигатор на основе Sirf Atlas IV. Но это скорей представляет интерес тем, кто в ночи псов шукает. |
|
В начало страницы |
|
|
admin
На форуме с 06.12.2006 Сообщений: 11166 г.Королёв
|
|
LEO111 писал(а): | В последнее время на многих ресурсах используется география. У меня есть база созданная на основе maxmind geoip для России в формате ГОРОД, РЕГИОН, ФО, ДОЛГОТА, ШИРОТА, НАСЕЛЕНИЕ.
Если ее прикрутить к профилю, то можно будет сделать визуальную карту участников форума. Думаю многим это было бы интересно, так как черныш не та порода, что вышел и на улице нашел соплеменников. |
Я только что вернулся Железноводска, после дороги соображаю еще не очень хорошо, можно чуть подробнее в личку написать? И где можно пример глянуть? |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
admin,
Ну чисто визуально результат будет навроде http://net.compulenta.ru/upload/iblock/751/latitude.jpg
Само определение географии тут реализвано http://www.taxionmap.ru
Собственно нужно следующее для этого:
1. Три новых поля в таблице Users - долгота, широта и город.
2. Заливаем базу на сервер и скрипт определения по IP - точность в России порядка 95%. Автоматом заполняются новые поля в таблице.
Еще можно прикрутить возможность корректировать город и конкретное местоположение (до дома) самим пользователем.
В результате получаем возможность открыть карту на базе Google Maps и на ней увидеть софорумников в смоем городе, районе или области.
Добавлено спустя 4 минуты 36 секунд
Если же нет желания возиться с переделкой движка, могу сделать как сторонний сервис - причем весьма быстро.
Тогда либо вообще ничего делать не придется, либо для красоты вставить строчку кода в шаблон отображения информации о пользователей. |
|
В начало страницы |
|
|
admin
На форуме с 06.12.2006 Сообщений: 11166 г.Королёв
|
|
LEO111, ага.
1) А может лучше создать новую таблицу связанную с Users?
2) А другие страны? :)
3) Возможность редактировать думаю нужно сделать
4) Сторонний севис на стороннем хостинге? Думаю, что это не лучший вариант, пусть все вместе будет. Время найду. |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
admin,
1. Можно, но из-за 3х числовых полей нужно ли?
2. Страны другие можно прикрутить конечно в режиме страна-город, я то делал именно адаптацию под Россию, хотя данные есть по всем странам.
Дело в том, что стандартный GeoIP дает например Москву как
"RU|Moscow|Moscow" - что мягко говоря некрасиво
У меня же это
"Москва, Московская область, ЦФО" |
|
В начало страницы |
|
|
admin
На форуме с 06.12.2006 Сообщений: 11166 г.Королёв
|
|
LEO111,
1) Чтобы не перегружать и так громоздкую таблицу - да :)
2) Этот вопрос нужно обязательно продумать, т.к. география чернышистов выходит далеко за пределы РФ :)
3) А вот ФО - не самая актуальная информация и в такой раскладке его вполне можно было бы заменить страной :) |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
admin, ну табличка в чуть больше 1100 записей может иметь любую ширину. Все тот же мискуль у меня держит с постоянными выборками и апдейтами таблицу в 18млн записей и ничего. Но не суть.
Если я правильно понял, то админ - программист, а потому С ПРАЗДНИКОМ КОЛЛЕГА :)
Вообще помоему мы договорились до того, чтобы взять базу MaxMind и прикрутить карту на GMAP. Таким образом мое участие вроде как только идея. |
|
В начало страницы |
|
|
admin
На форуме с 06.12.2006 Сообщений: 11166 г.Королёв
|
|
LEO111, может :) Причина конечно немного в другом - дополнительный сторонний функционал не хочется навешивать в базе на штатные таблицы :)
Взаимно!
Не только идея :) А еще подсказки, где все это брать ;-) |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
admin, первым делом бинарная база, новая максминда глючит - поэтому даже не обновляю пока
http://www.taxionmap.ru/php/geo/GeoLiteCity.dat - 43Мб wget в помощь :)
Потом сюды http://geolite.maxmind.com/download/geoip/api/php/
Нужно там будет только три модуля geoipcity.inc geoip.inc и geoipregionvars.php хотя от последней можно отучить легко, так как если мы берем только Город-Страна, то и пофигу, правда в штатах штук 8 городов Москва, но не суть
* Кстати как по-русски будет Москва во множественном числе? :)
потом пишем в хидере:
Код: | if (!(isset($_COOKIE["USERLOC"])))
{
include($_SERVER["DOCUMENT_ROOT"]."/php/geo/geoipcity.inc");
$gi = geoip_open($_SERVER["DOCUMENT_ROOT"]."/php/geo/GeoLiteCity.dat",GEOIP_STANDARD);
$IP=$_SERVER['REMOTE_ADDR'];
$location=geoip_record_by_addr($gi,$IP);
geoip_close($gi);
$USERLAT=$location->latitude;
$USERLNG=$location->longitude;
$USERCOUNTRY=$record->country_name;
$USERTOWN=$record->city;
setcookie("USERLOC", $USERCOUNTRY.'|'.$USERTOWN, time()+10*365*24*60*60, "/", $_SERVER["HTTP_HOST"]);
setcookie("LAT", $USERLAT, time()+10*365*24*60*60, "/", $_SERVER["HTTP_HOST"]);
setcookie("LNG", $USERLNG, time()+10*365*24*60*60, "/", $_SERVER["HTTP_HOST"]);
}
|
Чтобы потом выбрать человек мог город и страну - придется парсить последний и загонять в мискуль.
http://geolite.maxmind.com/download/geoip/database/GeoLiteCity_CSV/
Если захочется показывать для России нормально города, дам свой дапм в UTF8.
А дальше фантазия и только фантазия, в том числе как побочный эффект легко сделать автоматом определение часового пояса :)
Когда будут заполнены три поля юзеров, слепить из них карту легко, если что помогу с GMAP, с ним недавно так навозился, что походу уже Батоныч его изучил по моим комментариям. |
|
В начало страницы |
|
|
admin
На форуме с 06.12.2006 Сообщений: 11166 г.Королёв
|
|
LEO111, завтра с работы скачаю и попробую разобраться :) А нормально города для России - это по-русски? Тогда, конечно, захочется показывать нормально :)
Добавлено спустя 2 минуты 49 секунд
Кстати, на сайте geoip что-то про покупку лицензий пишут - это не для нас? ;-) |
|
В начало страницы |
|
|
LEO111
На форуме с 25.12.2008 Сообщений: 874 Мурманская область
|
|
admin, на счет русского. Придется немного изгольнуться только. У меня база в режиме lat,lon,town(русское название),reggionid.
Получаем город через координаты. То есть имея lat и lng с geoip ищем у какого города, если конечно country=='RU'
Цитата: | select TownID,RegionCode,FO from `locrus` where abs(lat-$USERLAT)<1 and abs(lng-$USERLNG)<1 order by abs(lat-$USERLAT)+abs(lng-$USERLNG) |
Базу я делал из wiki, потом опрашивал googlemaps на предмет координат городов России - в общем целый огород. Но запрос этот идет к таблице в 2500 записей и выполняется разово, так что нагрузки фактически не дает.
База GEOIP платная есть, а есть бесплатная, разница в обновлениях и типа точности. В режиме платная 99.9%, бесплатная 95%, но на самом деле для России пофиг точно по точности. К тому же в нашем случае человек может и сам поправить.
Плюс к тому допустим у нас в Мурманской области IP адрес с Megafon 3g тот же, что и в Питере, тут никакая база не поможет. |
|
В начало страницы |
|
|
|
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|