¿Cómo puedo saber de dónde es una IP mediante código PHP?
Muchas gracias
| |||
Revia el foro sobre GeoIP .. o IPtocountry .. veras ejemplos y comentarios al respecto. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
Encontré esto, puede que te sirva Cita: Muchas veces en el desarrollo de un sitio web nos podemos enfrentar a la posibilidad de tener que saber de que país es el usuario que nos esta visitando, tanto para enviarlo a contenidos en su idioma como también para mostrarles publicidad especifica de su región, validar datos, analizar los web logs, etc. Por suerte un programador (Per Soderlind) se encargo de desarrollar un script ASP muy fácil de usar el cual nos permite mediante la IP del usuario averiguar su país.Vean un ejemplo. Su forma de uso es muy fácil, solamente debemos mediante un include llamar a un método dentro del script, veamos el ejemplo... <% Option Explicit %> <!--#include file="GeoIP.asp"--> <% Dim oGeoIP,strErrMsg Dim strIP,strCountryName,strCountryCode Set oGeoIP = New CountryLookup oGeoIP.GeoIPDataBase = Server.MapPath("GeoIP.dat") If oGeoIP.ErrNum(strErrMsg) <> 0 Then Response.Write(strErrMsg) Else strIP = request.ServerVariables("REMOTE_ADDR") strCountryName = oGeoIP.lookupCountryName(strIP) strCountryCode = oGeoIP.lookupCountryCode(strIP) End If Set oGeoIP = Nothing %> Analicemos un poco el código, lo primero que debemos hacer es incluir el mencionado script para ello utilizamos la directiva "include" que apunta al archivo GeoIP.asp (Debajo se puede descargar) este archivo es el que contiene todo el código ASP para detectar el país del usuario. Luego definimos las variables a utilizar y creamos el objeto el cual nos expondrá todos los métodos y propiedades del script GeoIP "Set oGeoIP = New CountryLookup". Por ultimo lo que debemos hacer es indicarle donde se encuentra la base de datos de GeoIP llamada "GeoIP.dat" (Debajo se puede descargar), esta base de datos contiene los códigos de países (AR, ES, MX, CL, ETC) relacionados con los nombres de los países (Argentina, España, Etc.) Es importante tener actualizado el archivo GeoIP.dat ya que las relaciones IP / Pais sufren cambios a medida que pasa el tiempo, pueden descargar el archivo actualizado desde el enlace titulado Download the latest GeoLite Country Binary Format, este archivo se actualiza cada mes y su uso es gratuito. Una ves definida esa propiedad podemos utilizar los métodos.. * lookupCountryName(ip) - Pasándole como parámetro la ip devuelve el nombre del país. * lookupCountryCode(ip) - Pasándole como parámetro la ip devuelve el codigo del país. Recordemos que para obtener la ip del usuario utilizamos.. strIP = request.ServerVariables("REMOTE_ADDR") Bien, ahora siguiendo con el ejemplo anterior para mostrar los datos lo único que debemos hacer es un Response.Write con los datos obtenidos.. <% Response.Write strCountryName Response.Write strCountryCode %> |
| |||
Cita: No sé como se busca en este foro
Iniciado por Cluster Revia el foro sobre GeoIP .. o IPtocountry .. veras ejemplos y comentarios al respecto. Un saludo, ![]() Cita: ¿Dónde está el archivo que viene?
Iniciado por Klop Encontré esto, puede que te sirva , Si puedes pásame esa URl y ya lo miro yo, ese código es de ASP, pero si funciona lo paso a PHP en un momento jeje. Muchas gracias |
| |||
errioxa SI te fijas a la derecha arriba tienes el botón "buscar" .. ahí llegaras a un enorme buscador con multitud de opciones... intenta usarlo (veras que útil es). También con estas palabras claves que por mi parte te he dado ya tienes el pié para usar Google: geoip php class De eso salen links como este: http://www.maxmind.com/app/php Si te fijas .. hay várias BBDD que detallan IP's llegando a Ciudades o sólo paises .. o algo más detallado .. algunas gratuitas y otras de pago (cuanto más detalle: más $$). Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
Cita: Pues en mi navegador IE no sale ese botón ¡¡¡
Iniciado por Cluster errioxa SI te fijas a la derecha arriba tienes el botón "buscar" .. ahí llegaras a un enorme buscador con multitud de opciones... intenta usarlo (veras que útil es). de verdad Gracias por las respuestas PD: ahh cuando estoy registrado |
| ||||
aver si te sirve el enlace para buscar dentro del Foro http://www.forosdelweb.com/search.php Saludos! |
| |||
Cita: Entiendo que si publicas mensajes en el foro estás registrado y por ende ahí disfrutas de todo lo que a un usuario registrado se ofrece a cambio de la "lata" (o tedioso) de tener que registrarse en un sitio (como este por ejemplo).
Iniciado por errioxa Pues en mi navegador IE no sale ese botón ¡¡¡ de verdad Gracias por las respuestas PD: ahh cuando estoy registrado Efectivamente el "buscador" sólo está disponible cuando estás registrado .. al igual que otras ventajas como no ver publicidad (o eso es sólo para moderadores .. ahora no recuerdo) y cosas así ... Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
Para saber de que pais es el usuario necesitas tener alguna base de datos o script donde puedas consultar ese numero a que pais pertenece. Si no te es vital la exactitud, hay codigos gratuitos que podes encontrar en Google. Si necesitas algo muy preciso, vas a necesitar buscar algo mas eficiente. |