Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Определение региона страны (https://javascript.ru/forum/misc/57327-opredelenie-regiona-strany.html)

sergiocharm 29.07.2015 22:04

Определение региона страны
 
Ребят. А есть такой скрипт который определяет откуда пользователь зашел на сайт? Мне бы просто хотелось показывать объявление только пользователям находящимся в Перми.

laimas 30.07.2015 00:57

Geolocation HTML5 + АPI карт Гугла или Яндекса. Или на сервере по базе IP.

Deff 30.07.2015 01:18

Geolocation HTML5 требует взаимодействия с юзером...
Мон поискать сервисы в Инете с гео-IP и API дающей возможность считать скриптом(Видел такие)
Есть неплохие и без API, просто нун переложить запрос о гео-IP на сервер
К примеру http://www.ip-ping.ru/
Формат запроса:http://www.ip-ping.ru/ipinfo/?ipinfo=77.155.202.104

Aetae 30.07.2015 03:37

Лучший вариант из бесплатных сервисов, что я находил: ip-api.com.
Так то подобных много, но очень часто у них неактуальная база и кривой API.

Пример:
<script>function showCity(o){
    alert(o.country+' - '+o.city)
}</script>
<script src="http://ip-api.com/json/?fields=country,city&callback=showCity"></script>

sergiocharm 31.07.2015 20:55

Цитата:

Сообщение от Aetae
Пример:

я немного не в курсе, а как использовать?

sergiocharm 31.07.2015 22:56

Цитата:

Сообщение от Rise
Открой ссылку узнаешь откуда ты)

ну это я перешел и понял. А как див туда впихнуть?
т.е. у меня есть баннер и надо чтобы если чел зашел из перми то див показать. если нет то не показывать

Deff 31.07.2015 23:36

<div id="filt_city" style="display:none">Привет Пермякам!</div>
<script>function showCity(o){
    var regionName = o.regionName
    alert(regionName);
    var testRegion = "Perm Krai";
    var isTest = (testRegion == regionName);
    if(isTest)document.getElementById('filt_city').style.display='block';
}</script>
<script src="http://ip-api.com/json/?fields=country,city,regionName&callback=showCity"></script>

sergiocharm 01.08.2015 21:25

Deff,
не работает

sergiocharm 01.08.2015 21:26

Цитата:

Сообщение от Rise
Или на регион o.region == 'PER' проверять, соответственно в ссылке поменять на нужное поле fields=region

не работает
<script>
 function showRegion(o){
    if (o.region == 'PER') {
	document.getElementById('filt_city').display='block';
    }
}
 </script>
<script src="http://ip-api.com/json/?fields=region,city,regionName&callback=showCity"></script>

<div id="filt_city" style="display:none;margin:auto;width:1024px;font: 18px/22px Verdana;padding:20px 0;">Не нашли информацию здесь? 
<a href="/forum" style="color:#6db001;" target="_blank">Спросить на ФОРУМЕ</a>.</div>

Deff 01.08.2015 23:21

sergiocharm,
Скрипт должен стоять ниже самого блока <div id="filt_city"> на странице, иначе он не видит объекта, его нет на странице, когда скрипт начал и завершил работу


Часовой пояс GMT +3, время: 16:51.