Error creating feed file, please check write permissions.
Skip to content
Navegación
Increase font size Decrease font size Default font size
Estas aqui: Portada arrow tutoriales arrow php arrow Detectar el país del visitante
Detectar el país del visitante Imprimir E-Mail
Calificación usuario: / 0
MaloBueno 
jueves, 22 de diciembre de 2005
Detectar el país del visitante - PHPUna de las grandes necesidades de todo desarrollador web radica al momento de conocer el país del visitante bien sea para redireccionarlos a módulos o páginas con particularidades o características propias de cada determinación, entre otras funciones que se pueden desarrollar en el entorno.
Ejemplo: Si tenemos una página de productos y catálogos (Comercio Web) y deseamos mostrare al visitante el precio del referido producto o artículo expresado monetariamente en su moneda local.

Entre otras infinidades de particularidades.

En realidad el proceso de la detección del país a través del nick se realiza a partir de la dirección IP devuelta por superglobales como $_SERVE['REMOTE_ADDR'], tomando como soporte o base una serie criterios de posibilidades almacenados lógicamente en archivos de base de datos, para su posterior validación y deducción de sus cuatros componentes esenciales menores todos a 255.


En Php solo existen alguna funciones que permiten obtener información acerca de maquinas conectadas a una red especifica por medio de las Funciones de Red, pero no creamos que una función o un par de funciones nos harán todo el trabajo; por el contrario solo serán bases para todo el ensamblaje.

Ciertamente la empresa Maxmind, desarrolladora por excelencia de este tipo de herramientas con soporte para diferentes tecnologías “GeoIp”, logro solucionar este gran problema con un 95% de efectividad con un conjunto de funciones y un archivo de bases de datos.

Para poder utilizar esta herramienta deberemos descargar la base de datos:
GeoIP.dat.gz > http://www.maxmind.com/download/geoip/database/GeoIP.dat.gz
Biblioteca de vínculos y funciones:
Geoip.inc http://www.maxmind.com/download/geoip/api/php/geoip.inc

Fianlemente realizaremos un test con las siguientes lineas:


<?php
require("geoip.inc");  /*requerimos la biblioteca o liberia */

$abir_bd = geoip_open("GeoIP.dat",GEOIP_STANDARD); /* apertura y lectura del archivo utilizando la constante GEOIP_STANDARD como forma de lectura que adquiere valor en geoip.inc */

/* imprimimos el nick del país */
echo geoip_country_name_by_addr($abir_bd, $_SERVER['REMOTE_ADDR']);

/* liberamos memoria cerrando el resorce devuelto por $abir_bd de la apertura*/
geoip_close($abir_bd);

?>


Desventajas y Sugerencias:

Seria un gravísimo error que incluyeramos estas lineas en todas nuestra páginas, recordemos que cada vez que esta se carge llamara a si mismo el archivo geoip.inc y GeoIP.dat, este ultimo supera los 700 Kb de tamaño y puede considerablemente extender el tiempo de carga de la página.

Sugerencias:
Podemos almacenar el valor del nick o código del país en una session ($_SESSION) preferiblemente, o en su defecto en COOKIES; para que de este modo solo se lea una vez ya que lógicamente el visitante no cambiara de IP a cada vez que refresque o navegue en una página


 

Fuente: Blasten

< Anterior   Siguiente >
Diseño Web
Recibe en tu Email las Últimas noticias y artículos publicados en la web


** En la ventana nueva debes ingresar el número de verificación

Usuarios

Usuario

Contraseña

Recordarme
¿Recuperar contraseña?
¿Quiere registrarse? Hágalo aquí

Sindicación

Webs Amigas
Mucho Grafico
Recursos Gratuitos para Webmasters
Tutoriales y Foro de Diseño
Recursos Oracle
Infected FX
Noticias Informaticas
Noticias Gadget
Intercambio de Links

Articulos para tu Web

Articulos Diseño Web

Noticias

Usuarios en Línea

Hay 105790 invitados en línea y 1 usuario en línea