Marcofbb Noticias y Artículos Webmasters



Publicidad marcored

Obtener país a través de IP PHP

  • 31/10/2012
  • 5:10 pm
  • marcofbb

Función en PHP para sacar País, Estado/Provincia y Ciudad de la IP del visitante de nuestra web.

function iploc($ip) {
	$html = file_get_contents("http://ipinfodb.com/ip_locator.php?ip=".$ip);
	preg_match("/<li>Country : (.*?) <img/",$html,$data);
	$d['pais'] = $data[1];
	preg_match("/<li>State\/Province : (.*?)<\/li>/",$html,$data);
	$d['state'] = $data[1];
	preg_match("/<li>City : (.*?)<\/li>/",$html,$data);
	$d['city'] = $data[1];
	return ($d);
}
function getRealIP() {
    if (!empty($_SERVER['HTTP_CLIENT_IP']))
        return $_SERVER['HTTP_CLIENT_IP'];
 
    if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
        return $_SERVER['HTTP_X_FORWARDED_FOR'];
 
    return $_SERVER['REMOTE_ADDR'];
}
$ip = getRealIP();
$iploc = iploc($ip);
echo $iploc["city"].", ".$iploc["state"].", ".$iploc["pais"];
// FEDERAL, ENTRE RIOS, AR

Los países se encuentran en su código ISO.
+info en http://es.wikipedia.org/wiki/ISO_3166-1#C.C3.B3digos_ISO_3166-1

Share

¿Necesitas ayuda? o ¿Asesoramiento webmaster? Registrate en nuestro foro de consultas

Posts Relacionados

Total de Comentarios: 7

Avatar
gabriel gonzalez
16/03/2013
12:54 pm

Exelente men tu post me ayudo mucho
exelente
con esto ya puedo hacer muchas cosas q tengo en mente con unos cuantos if

y listo!

gracias

Avatar
Asdrubal
03/04/2013
4:07 pm

Compa muy bueno el cod, funciona bien. saludos.

Avatar
José Luis Rosales
06/06/2013
10:52 pm

Gracias, funciona perfecto, le voy a hacer un ajuste para aplicarlo a una tabla y que me de un reporte que ya se genera, pero ahora con tu script, tendrá el país y la ciudad.

José Luis
México D.F.

Avatar
David
10/06/2013
12:57 pm

No funciona... Me sale solo una coma y nada mas...Poruqe puede ser_?

Avatar
27/06/2013
8:25 am

Hola David, te saldrá una coma por que lo probaste en local, para argentina creo que no funciona bien, ya que la mayoria de las IP con las que navegamos estan registradas en BS con lo que la GEO sale BS. mas concreto, este es mi resultado BUENOS AIRES, DISTRITO FEDERAL, AR y he verificado en varias webs, verifica lo mismo, debe de ser por una mala bas de datos de ipinfodb.com tan solo me salta bien en badoo, face, y pocas mas
UN ABRAZO

Avatar
Alguien
14/09/2013
12:40 am

probar con http://www.ipaddresslocation.org

tiene una mayor exatitud

y otro comentario, si se conectan a travez de un proxy tambien dira otra cosa que nada que ver

Avatar
23/10/2013
12:21 am

Ese metodo ya no funciona. Saludos


Enviar Comentario

(*)

(*)