Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/02/2009, 10:15
Avatar de lalogrosz
lalogrosz
 
Fecha de Ingreso: mayo-2002
Ubicación: Capital Federal
Mensajes: 339
Antigüedad: 22 años
Puntos: 6
Respuesta: Ubicar geográficamente ip con php

aca te paso una funcion que te va a servir para esto. Necesitas tener CURL.

Código PHP:
function GetUbicacionesIP($ip){
                                    
            
$archivo_xml "http://api.hostip.info/get_xml.php?ip=".$ip ."";            
            
$ch curl_init();
            
$timeout 0// set to zero for no timeout
            
curl_setopt ($chCURLOPT_URL$archivo_xml);
            
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
            
curl_setopt ($chCURLOPT_CONNECTTIMEOUT$timeout);
            
$procedencia_xml curl_exec($ch);
            
curl_close($ch);
            
            
//$procedencia_xml = file_get_contents($archivo_xml);
        
        
            
if (empty($procedencia_xml)){
                
$array["pais"] = "desconocido";
                
$array["lugar"] = "desconocido";
                
$array["sigla"] = "desconocido";
            }else{
                
preg_match_all("|<Hostip>(.*)</Hostip>|sU"$procedencia_xml$items);
                
$lista_nodos = array();
                foreach (
$items[1] as $key => $item)
                {
                    
preg_match("|<gml:name>(.*)</gml:name>|s"$item$mi_lugar);
                    
preg_match("|<countryName>(.*)</countryName>|s"$item$mi_pais);
                    
preg_match("|<countryAbbrev>(.*)</countryAbbrev>|s"$item$mi_sigla);
                    
                    
$lista_nodos[$key]['mi_lugar'] = $mi_lugar[1];
                    
$lista_nodos[$key]['mi_pais'] = $mi_pais[1];
                    
$lista_nodos[$key]['mi_sigla'] = $mi_sigla[1];
                }
                
                for (
$i 0$i 1$i++)
                {
                    
$array["pais"] = $lista_nodos[$i]['mi_pais'];
                    
$array["lugar"] = $lista_nodos[$i]['mi_lugar'];
                    
$array["sigla"] = $lista_nodos[$i]['mi_sigla'];
                }
                
$procedencia_xml "";
            }
            
            return 
$array;
            
        } 
__________________
"Vivir....solo cuesta Vida"