Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Определить город посетителя
Покинул форум
Сообщений всего: 561
Дата рег-ции: Нояб. 2009
Помог: 2 раз(а)
передо мной стоит задача сделать определение города посетителя. Использую такой способ http://geoip[dot]elib[dot]ru/?page_id=281 но определяется только большие города. Если посетитель заходит с маленького города, то показывает ближайший большой город. Хотелось бы сделать чтоб маленькие города тоже определялись. Можете посоветовать что нибуть? можно даже платное
esterio
Отправлено: 17 Октября, 2013 - 11:11:43
Активный участник
Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012 Откуда: Украина, Львов
Помог: 127 раз(а)
думаю такое не получиться. Хотя помню в браузерах есть такая штука, как определение местоположения, но более детально не изучал
kuller
Отправлено: 17 Октября, 2013 - 11:16:00
Частый посетитель
Покинул форум
Сообщений всего: 561
Дата рег-ции: Нояб. 2009
Помог: 2 раз(а)
esterio пишет:
думаю такое не получиться. Хотя помню в браузерах есть такая штука, как определение местоположения, но более детально не изучал
знаю такую штуку. не подходит только тем что отправляется запрос посетителю на разрешения определения места нахождения.
что та вроде слышал про базу IP адресов платную (давно было). Но где ее брать, и как она определяет города не знаю.
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Как можно определить местоположение? По тому, что мы можем узнать о пользователе. Например, IP.
Но в таком случае вы получаете местоположение IP, а не пользователя. Если верить IP, живу я в Питере, а на работу езжу в Нидерланды. Далековато, правда?
Если провайдер в областном центре использует один пул адресов для своих абонентов из области - точнее, чем этот областной центр определить невозможно. Ведь каждый следующий день через этот IP может выходить другой пользователь с другого места.
----- PostgreSQL DBA
kuller
Отправлено: 17 Октября, 2013 - 11:57:24
Частый посетитель
Покинул форум
Сообщений всего: 561
Дата рег-ции: Нояб. 2009
Помог: 2 раз(а)
Мелкий пишет:
Как можно определить местоположение? По тому, что мы можем узнать о пользователе. Например, IP.
Но в таком случае вы получаете местоположение IP, а не пользователя. Если верить IP, живу я в Питере, а на работу езжу в Нидерланды. Далековато, правда?
Если провайдер в областном центре использует один пул адресов для своих абонентов из области - точнее, чем этот областной центр определить невозможно. Ведь каждый следующий день через этот IP может выходить другой пользователь с другого места.
чета я не совсем понял что имел виду. имеешь виду что по IP нельзя определить? но примеры из поисковых систем рабочие, один из которых я пробывал. Почему не устроил писал в первом посте.
IllusionMH
Отправлено: 17 Октября, 2013 - 12:11:54
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
kuller, в том то и дело, что список бесплатных баз не позволяет определять села и т.д. На провайдера выделен некий диапазон адресов. Он правдами и неправдами дотянул оптику(в лучшем случае) до села и все село сидит через 1 внешний IP(не факт что отличается от городского). Но провайдер зарегистрирован в городе, и сервер через который выходит село в тоже стоит в городе. Так что по ИП - точность низкая. Возможно существуют огромные платные базы, но и им тоже нужно большое время, чтобы отобразить исчезновение провайдера Х из города Y и переход его адресов в пул другого провайдера(вероятно и в другом месте).
GeolocationAPI будет работать только по разрешению пользователя и, скорее всего, только на мобильных девайсах, а какое право вы имеет отслеживать мое местоположение(с точностью до поселка в области)? Не проще ли самого пользователя спросить откуда, и если он захочет - скажет.
Покинул форум
Сообщений всего: 561
Дата рег-ции: Нояб. 2009
Помог: 2 раз(а)
IllusionMH пишет:
kuller, в том то и дело, что список бесплатных баз не позволяет определять села и т.д. На провайдера выделен некий диапазон адресов. Он правдами и неправдами дотянул оптику(в лучшем случае) до села и все село сидит через 1 внешний IP(не факт что отличается от городского). Но провайдер зарегистрирован в городе, и сервер через который выходит село в тоже стоит в городе. Так что по ИП - точность низкая. Возможно существуют огромные платные базы, но и им тоже нужно большое время, чтобы отобразить исчезновение провайдера Х из города Y и переход его адресов в пул другого провайдера(вероятно и в другом месте).
GeolocationAPI будет работать только по разрешению пользователя, а какое право вы имеет отслеживать мое местоположение(с точностью до поселка в области)? Не проще ли самого пользователя спросить откуда, и если он захочет - скажет.
фирма открывает офисы в разных городах, когда посетитель заходит на сайт нужно определить точный город и показать информацию по тому городу в котором он проживает. Нам села конечна не нужно определять но города где проживают от 400 тыс. жителей хотелось бы чтоб шло определение.
IllusionMH
Отправлено: 17 Октября, 2013 - 12:28:26
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
kuller, ненавязчивый попап с предложением выбрать город. Либо искать платные базы.
Половина баз считает что я из Германии, так что я даже и не знаю что мне покажет
Мелкий
Отправлено: 17 Октября, 2013 - 12:40:17
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
kuller пишет:
имеешь виду что по IP нельзя определить?
Можно. Но определите примерное местоположение провайдера последней мили, а не пользователя.
Работает определение местоположения по IP? Зачастую работает. Для больших городов и провайдер и пользователь обычно в одном месте и находятся. А иногда и нет.
А что делать с малыми сёлами? Например (все цифры для примера), местное отделение какого-нибудь провайдера, у них в наличии 8 IP и в округе 10 сел. Оопс, уже не хватило IP для идентификации местоположения пользователя из села.
А если пользователей побольше 8 имеющихся IP, то используется NAT. И может использоваться любая балансировка серых адресов абонентов во внешние IP так, что сегодня абоненты из первого села выходит через один IP, а завтра через этот IP выходят абоненты из другого села.
А если через один IP выходят абоненты из разных сёл, как их определять, кто где? Вот и является правдоподобным только местоположение провайдера, но не абонента.
----- PostgreSQL DBA
Squirrel
Отправлено: 17 Октября, 2013 - 19:24:29
Забанен
Покинул форум
Сообщений всего: 147
Дата рег-ции: Авг. 2013
Помог: 4 раз(а)
[+]
kuller пишет:
чета я не совсем понял что имел виду. имеешь виду что по IP нельзя определить?
Нужно четко понимать механизм. Каждый IP Выдается (назовем это) роутером провайдера из некого пула адресов. По этому нельзя определить где находится пользователь. Можно лишь определить каким роутером этот IP Выдан. Двух роутеров с огромным запасом хватает, что бы обслуживать город и область с населением более 2'000'000 чел.
Роутер выдает адреса из пула провайдера. В WhoIs прописывают (обычно) адрес офиса провайдера которому принадлежит этот пул. Не факт, что оффис и роутер установлен в одном городе, по этому по информации из WhoIs можно лишь сделать предположение, в каком городе установлен роутер, а где находится пользователь, если роутер обслуживает больше одного города, вообще не возможно.
imya
Отправлено: 18 Октября, 2013 - 11:38:14
Участник
Покинул форум
Сообщений всего: 1472
Дата рег-ции: Сент. 2012 Откуда: Запорожье, Украина
Помог: 19 раз(а)
Squirrel пишет:
если роутер обслуживает больше одного города, вообще не возможно.
Тогда какой смысл создавать такое кол-во сайтов, которые якобы могут определить твой IP-адрес и выдать твоё местоположение ?? Если все они используют один и тот же механизм...конкуренции никакой.
Когда нормальный человек, уезжая из дома одевает на жену пояс верности, веб-дизайнер ставит на нее счетчик...
IllusionMH
Отправлено: 18 Октября, 2013 - 13:29:48
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
imya, в утопическом мире Geolocation API действительно помогало бы. Но в самом безобидном случае это выливается в назойливые рекламки. Для того же интернет магазина возможность определить хотя бы город/поселок - уже хороший плюс в удобстве заполнения формы доставки.
Ch_chov
Отправлено: 18 Октября, 2013 - 17:07:52
Постоянный участник
Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008 Откуда: из города
Помог: 90 раз(а)
http://ipgeobase[dot]ru/
Для России вполне адекватно работает. Для надежности, можно дать возможность пользователю самому указать местположение, если автопределение его не устроило.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.