Php szkript operátor meghatározásához ip alapján. Sypex Geo - egy város gyors azonosítása IP alapján. Ismerje meg a felhasználó országát és egyebeket

Jelenítse meg a látogató városát az üzletek konverziós arányának javítása érdekében. Kész beillesztési kód bárhol a webhelyen, amely jelzi a várost, a régiót és az országot. Sok szkriptet kipróbáltam, de ez bizonyult a legegyszerűbbnek és a leghatékonyabbnak! A www.mzm-market.ru webhely létrehozásakor használtam, ahol a szkript a „szállítási címre___” feliratot jeleníti meg.

Illessze be a következő kódot az index.tpl fájlba (vagy a szállítási oldalon) a kívánt helyre:



window.onload =function())(
jQuery("#felhasználói város").text(ymaps.geolocation.city);
jQuery("#felhasználói régió").text(ymaps.geolocation.region);
jQuery("#felhasználói ország").text(ymaps.geolocation.country);)


A kimenet a következőkkel készül:

// ország, város, régió.
geolocation.country, geolocation.city, geolocation.region

Szeretnék egy kicsit kiegészíteni ezt a bejegyzést (szerkesztve: 2017. február 18.).

A fenti szkript használatakor sok városban és böngészőben egyszerűen semmi nem jelent meg, és hosszas keresés után megtaláltam a valószínűleg leghatékonyabb szkriptet ország, régió, város meghatározásához a Yandex API-n keresztül. Kipróbáltam ügyfeleimen keresztül, akik szinte az egész Oroszországban és azon túl is találhatók, és ez a forgatókönyv kiválónak bizonyult! Itt van egy képernyőkép a kliensemről:

Érted, hogy minden világosan meghatározásra került! Nos, nem gyötörlek írásokkal, és mondok egy példát!

js Ország, régió, város meghatározása Yandex API-n keresztül

Csak illessze be ezt a kódot a címkék közé




$(dokumentum).ready(function())(
ymaps.ready(function())(
var geolocation = ymaps.geolocation;
$("#cou").html("Az Ön országa: "+geolocation.country);
$("#tow").html("Az Ön városa: "+geolocation.city);
$("#reg").html("Az Ön régiója: "+geolocation.region);
});
});

És ez a kód a megfelelő helyen az oldalon:

Az Ön országa: ... határozott...
Az Ön városa: ... határozott...
Az Ön régiója: ... határozott...

Demonstráció

Az Ön országa: ... határozott...

Az Ön városa: ... határozott...

Az Ön régiója: ... határozott...

A szkript problémamentesen működik, de előfordulhat, hogy azok számára, akik kis falvakban vannak, nagy valószínűséggel helytelenül határozzák meg a várost, és az internetszolgáltató városát.

A szerzőtől: az interneten a vezeték- és keresztneved nem jelent semmit. Itt az IP-t használják a felhasználó meghatározására. Ennek ismeretében meghatározhatja egy személy lakóhelyének városát és országát, a használt böngészőt…. Ne higgy nekem? Mindezt meg fogja érteni, ha tanulmányozza az IP definícióját PHP-ben.

IP és így tovább

A felhasználó hálózati információinak PHP-ben való beszerzéséhez van egy $_SERVER globális tömb. Jelentsük meg a tartalmát a képernyőn:

Most már tudjuk, hogy az IP-cím a REMOTE_ADDR-ben van rögzítve. Honnan származik? Az ügyfél ezeket az adatokat a kapcsolat létrehozása során küldi el. Ez a változó az ügyféloldali szerverbeállításokban van beállítva.

Vannak, akik HTTP fejlécértékeket használnak a város IP alapján történő meghatározására PHP-ben, de ez alapvetően helytelen. Bármely felhasználó megadhat fejlécértékeket a gazdagépéhez. Azt is meg kell értened, hogy milyen IP-címre van szükséged. Például a HTTP_X_FORWARDED_FOR érték tartalmazza a távoli kliens címét, a proxyját, vagy teljesen üres is lehet. Egyszóval több estére is elég lesz ezt megoldani.

Ami a felhasználó böngészőjét illeti, megpróbálhatja meghatározni a get_browser() függvény segítségével. De a kliens oldalon való használathoz a browscap.ini elérési útját meg kell adni a php.ini fájlban. Ellenkező esetben a következő figyelmeztetést kapja:

Ismerje meg a felhasználó országát és egyebeket

Most a PHP segítségével IP alapján határozzuk meg az országot. De először tekintsük át az összes megoldást ezen a területen. A legtöbb ilyen szkript az általunk említett $_SERVER REMOTE_ADDR globális tömbelemet használja. Most jön a legfontosabb rész.

Használhatja már, amelyben a kapott IP-t egyszerűen az értékétől függően rendezi. Remélem, nem titok az Ön számára, hogy ezt az értéket az ügyfélhez (gazdagéphez) rendeli hozzá a földrajzi helyétől függően: ország, város és a felhasználó lakóhelye szerinti régió. Minden funkció ezen tartományok elemzésén alapul.

Különféle harmadik féltől származó szolgáltatásokat is használnak, mint például az ip-whois.net. A szkript segítségével átadja az IP-értéket, és az adatokat ad vissza a gazdagép helyéről.

Ezen túlmenően egyes szakkönyvtárak saját adatbázissal is rendelkeznek, amelyek táblázatai az összes IP-tartományt (földrajzi elhelyezkedés szerint) rendezve tartalmazzák. Nem sorolom fel őket. Ma már rengeteg van belőlük az interneten.

Te döntesz. Harmadik féltől származó szolgáltatások használata csökkenti az erőforrás-költségeket és a webhely terhelését. Ugyanakkor a könyvtár és az adatbázis használata megszünteti a csatlakozási problémákat.

A következő szkript a TabGeo könyvtárat használja a régió meghatározására IP PHP segítségével. Most a hivatalos forrás nem működik. Letöltöttem a könyvtárat a GitHubról, de csak a country.php fájlt használtam. A kapott IP-címet használja a felhasználó tartózkodási országának meghatározásához. Ezután (az ISO kód használatával) átirányításokat hajthat végre a webhely különböző oldalaira: