Php-skript for å bestemme operatør ved ip. Sypex Geo - rask identifikasjon av en by med IP. Finn ut brukerens land og mer

Vis den besøkendes by for å forbedre butikkens konverteringsfrekvens. Ferdig innsettingskode hvor som helst på nettstedet som indikerer by, region og land. Jeg prøvde mange skript, men dette viste seg å være det enkleste og mest effektive! Jeg brukte det da jeg opprettet nettstedet www.mzm-market.ru, der skriptet viser "levering til______"

Lim inn følgende kode i index.tpl (eller på leveringssiden) på et ønsket sted:



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


Utgangen er laget ved å bruke:

// land, by, region.
geolocation.country, geolocation.city, geolocation.region

Jeg vil gjerne legge til litt til dette innlegget (redigert 18. februar 2017).

Når du bruker skriptet ovenfor, ble det rett og slett ikke vist noe i mange byer og nettlesere, og etter et langt søk fant jeg sannsynligvis det mest effektive skriptet for å bestemme et land, en region, en by via Yandex API. Jeg testet det gjennom kundene mine, som er lokalisert nesten over hele Russland og utover, og dette manuset viste seg å være utmerket! Her er et skjermbilde av min klient:

Du forstår at alt er klart definert! Vel, jeg vil ikke plage deg med skrifter og vil gi deg et eksempel!

js Bestemmelse av land, region, by via Yandex API

Bare lim inn denne koden mellom taggene




$(document).ready(function())(
ymaps.ready(function())(
var geolocation = ymaps.geolocation;
$("#cou").html("Ditt land: "+geolocation.country);
$("#tow").html("Din by: "+geolocation.city);
$("#reg").html("Din region: "+geolocation.region);
});
});

Og denne koden på rett sted på siden din:

Ditt land: ... bestemt ...
Din by: ... bestemt ...
Din region: ... bestemt ...

Demonstrasjon

Ditt land: ... bestemt ...

Din by: ... bestemt ...

Din region: ... bestemt ...

Skriptet fungerer uten problemer, men det er mulig at for de som er i små landsbyer, vil byen mest sannsynlig bli bestemt feil, og byen til Internett-leverandøren din vil bli bestemt.

Fra forfatteren: på Internett betyr for- og etternavnet ditt ingenting. Her brukes IP for å bestemme brukeren. Når du vet det, kan du bestemme byen og bostedslandet til en person, nettleseren som brukes .... Tro meg ikke? Du vil forstå alt dette når du studerer definisjonen av IP i PHP.

IP og mer

For å få brukerens nettverksinformasjon i PHP, er det en global matrise $_SERVER. La oss vise innholdet på skjermen:

Nå vet vi at IP-en er registrert i REMOTE_ADDR. Hvor kommer det fra? Klienten sender alle disse dataene under etableringen av tilkoblingen. Denne variabelen settes i serverinnstillingene på klientsiden.

Noen bruker HTTP-headerverdier for å bestemme en by etter IP i PHP, men dette er fundamentalt feil. Enhver bruker kan spesifisere overskriftsverdier for sin vert. Du bør også forstå hvilken IP du trenger. HTTP_X_FORWARDED_FOR-verdien inneholder for eksempel adressen til den eksterne klienten, dens proxy, eller kan være helt tom. Kort sagt, det blir nok til å ordne opp i dette i mer enn én kveld.

Når det gjelder brukerens nettleser, kan du prøve å finne den ved å bruke get_browser()-funksjonen. Men for å bruke den på klientsiden, må banen til browscap.ini spesifiseres i php.ini-filen. Ellers vil du motta en advarsel som denne:

Finn ut brukerens land og mer

Nå, ved å bruke PHP, vil vi bestemme landet etter IP. Men først, la oss gjennomgå alle løsningene på dette området. De fleste av disse skriptene bruker det globale array-elementet $_SERVER REMOTE_ADDR som vi nevnte. Nå kommer den viktigste delen.

Du kan bruke allerede, der den mottatte IP-en ganske enkelt sorteres avhengig av verdien. Jeg håper det ikke er noen hemmelighet for deg at denne verdien tildeles klienten (verten) avhengig av dens geolokalisering: land, by og bostedsregion for brukeren. All funksjonalitet er basert på analysen av disse områdene.

Ulike tredjepartstjenester som ip-whois.net brukes også. Ved å bruke skriptet sender du IP-verdien, og det returnerer data om plasseringen til verten.

I tillegg kommer noen spesialiserte biblioteker med sin egen database, hvor tabellene inneholder alle IP-områder sortert (etter geografi). Jeg vil ikke liste dem opp. Det er mange av dem på Internett nå.

Du bestemmer. Bruk av en tredjepartstjeneste vil redusere ressurskostnadene og belastningen på nettstedet ditt. Samtidig vil bruk av biblioteket med databasen eliminere tilkoblingsproblemer.

Følgende skript bruker TabGeo-biblioteket til å bestemme regionen etter IP PHP. Nå fungerer ikke den offisielle ressursen. Jeg lastet ned biblioteket fra GitHub, men brukte bare country.php-filen. Den bruker den mottatte IP-en til å bestemme brukerens bostedsland. Og så (ved å bruke ISO-koden) kan du implementere omdirigeringer til forskjellige sider på nettstedet: