Php skript pro určení operátora podle ip. Sypex Geo - rychlá identifikace města podle IP. Zjistěte zemi uživatele a další

Zobrazte město návštěvníka, abyste zlepšili míru konverze obchodu. Hotový vkládací kód kdekoli na webu označující město, region a zemi. Vyzkoušel jsem spoustu skriptů, ale tento se ukázal jako nejjednodušší a nejúčinnější! Použil jsem to při vytváření webu www.mzm-market.ru, kde skript zobrazuje „doručení do______“

Vložte následující kód do index.tpl (nebo na doručovací stránku) na libovolné místo:



window.onload =function())(
jQuery("#user-city").text(ymaps.geolocation.city);
jQuery("#user-region").text(ymaps.geolocation.region);
jQuery("#user-country").text(ymaps.geolocation.country);)


Výstup se provádí pomocí:

// země, město, region.
geolocation.country, geolocation.city, geolocation.region

K tomuto příspěvku (upraveno 18. února 2017) bych rád něco málo doplnil.

Při použití výše uvedeného skriptu se v mnoha městech a prohlížečích prostě nic nezobrazovalo a po dlouhém hledání jsem našel asi nejefektivnější skript pro určení země, regionu, města přes Yandex API. Testoval jsem to prostřednictvím svých klientů, kteří se nacházejí téměř po celém Rusku i mimo něj, a tento skript se ukázal jako vynikající! Zde je snímek obrazovky mého klienta:

Chápete, že vše bylo jasně definováno! Nebudu vás mučit spisy a dám vám příklad!

js Určení země, regionu, města přes Yandex API

Stačí vložit tento kód mezi značky




$(document).ready(function())(
ymaps.ready(funkce())(
var geolocation = ymaps.geolocation;
$("#cou").html("Vaše země: "+geolocation.country);
$("#tow").html("Vaše město: "+geolocation.city);
$("#reg").html("Váš region: "+geolocation.region);
});
});

A tento kód na správném místě na vaší stránce:

Vaše země: ... rozhodnutá...
Vaše město: ... rozhodnuto...
Váš region: ... určen...

Demonstrace

Vaše země: ... rozhodnutá...

Vaše město: ... rozhodnuto...

Váš region: ... určen...

Skript funguje bez problémů, ale je možné, že pro ty, kteří jsou v malých vesnicích, bude s největší pravděpodobností špatně určeno město a bude určeno město vašeho poskytovatele internetu.

Od autora: na internetu vaše jméno a příjmení nic neznamená. Zde se IP používá k určení uživatele. S jeho vědomím můžete určit město a zemi bydliště osoby, použitý prohlížeč…. Nevěříš mi? To vše pochopíte, když si prostudujete definici IP v PHP.

IP a další

Pro získání informací o síti uživatele v PHP existuje globální pole $_SERVER. Zobrazme jeho obsah na obrazovce:

Nyní víme, že IP je zaznamenána v REMOTE_ADDR. Odkud to pochází? Všechny tyto údaje klient odesílá při navazování spojení. Tato proměnná se nastavuje v nastavení serveru na straně klienta.

Někteří lidé používají hodnoty hlaviček HTTP k určení města podle IP v PHP, ale to je zásadně nesprávné. Každý uživatel může zadat hodnoty záhlaví pro svého hostitele. Měli byste také pochopit, jakou IP potřebujete. Například hodnota HTTP_X_FORWARDED_FOR obsahuje adresu vzdáleného klienta, jeho proxy nebo může být zcela prázdná. Zkrátka toho bude dost na to, aby se to vyřešilo na nejeden večer.

Pokud jde o prohlížeč uživatele, můžete jej zkusit určit pomocí funkce get_browser(). Ale pro použití na straně klienta musí být cesta k browscap.ini specifikována v souboru php.ini. V opačném případě obdržíte varování, jako je toto:

Zjistěte zemi uživatele a další

Nyní pomocí PHP určíme zemi podle IP. Nejprve si ale zopakujme všechna řešení v této oblasti. Většina těchto skriptů používá globální prvek pole $_SERVER REMOTE_ADDR, který jsme zmínili. Nyní přichází ta nejdůležitější část.

Můžete použít již, ve kterém se přijatá IP jednoduše třídí v závislosti na její hodnotě. Doufám, že pro vás není tajemstvím, že tato hodnota je přiřazena klientovi (hostiteli) v závislosti na jeho geolokaci: zemi, městě a regionu bydliště uživatele. Veškerá funkčnost je založena na analýze těchto rozsahů.

Používají se také různé služby třetích stran, jako je ip-whois.net. Pomocí skriptu předáte hodnotu IP a ten vám vrátí data o umístění hostitele.

Některé specializované knihovny navíc přicházejí s vlastní databází, jejíž tabulky obsahují všechny rozsahy IP seřazené (podle geografie). Nebudu je vypisovat. Na internetu je jich teď spousta.

Vy rozhodnete. Použití služby třetí strany sníží náklady na zdroje a zatížení vašeho webu. Zároveň používání knihovny s databází odstraní problémy s připojením.

Následující skript používá knihovnu TabGeo k určení regionu pomocí IP PHP. Nyní jeho oficiální zdroj nefunguje. Knihovnu jsem si stáhl z GitHubu, ale použil jsem pouze soubor country.php. Používá přijatou IP k určení země pobytu uživatele. A pak (pomocí kódu ISO) můžete implementovat přesměrování na různé stránky webu: