Перейти к содержимому


Фото
* * * * * 7 голосов

Определение города посетителя


Best Answer insider , 26.10.2014 - 23:21

Готовый код вставки в любое место сайта с указанием города, региона и страны.

<script src="http://yastatic.net/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript">
  window.onload = function () {
      jQuery("#user-city").text(ymaps.geolocation.city);
      jQuery("#user-region").text(ymaps.geolocation.region);
	  jQuery("#user-country").text(ymaps.geolocation.country);
  }
</script>
<script src="http://api-maps.yandex.ru/2.0-stable/?load=package.standard&lang=ru-RU" type="text/javascript"></script>
<div id="user-city"></div> <div id="user-region"></div> <div id="user-country"></div>
Перейти к посту


  • Чтобы отвечать, сперва войдите на форум
60 ответов в теме

#61 jonny008

jonny008
  • Пользователь
  • 95 сообщений

Опубликовано 25.06.2018 - 17:52

Все не так...

Смарти работает на сервере при генерации страницы, а джаваскрипт - в браузере юзера.

Получилось вот так вывести в переменную:

 

		$client  = @$_SERVER['HTTP_CLIENT_IP'];
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote  = @$_SERVER['REMOTE_ADDR'];
 
if(filter_var($client, FILTER_VALIDATE_IP)) $ip = $client;
elseif(filter_var($forward, FILTER_VALIDATE_IP)) $ip = $forward;
else $ip = $remote;
echo $ip;
include("SxGeo.php");
$SxGeo = new SxGeo('SxGeoCity.dat');
$data = $SxGeo->get($ip);
$city = $data['city']['name_ru'];
$this->design->assign('city', $city);	





0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых