Foros del Web » Programando para Internet » PHP »

Geoip

Estas en el tema de Geoip en el foro de PHP en Foros del Web. Hola nuevamente hace poco consulte como o con que se puede determinar el pais de visita de un usuario x y me ayudaron con el ...
  #1 (permalink)  
Antiguo 29/10/2011, 17:19
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 2 meses
Puntos: 12
Pregunta Geoip

Hola nuevamente hace poco consulte como o con que se puede determinar el pais de visita de un usuario x y me ayudaron con el Geoip, y probe este codigo;

Código PHP:

require_once("geoip.inc");

$abir_bd geoip_open("GeoIP.dat",GEOIP_COUNTRY_BEGIN);

echo 
geoip_country_name_by_addr($abir_bd$_SERVER['REMOTE_ADDR']);

echo 
$_SERVER['REMOTE_ADDR']; 
en priemera parte no funciona... no traes el pais pero si ma ip... alguien sabe como se configura, por que baje los archivos geoip.ini y geoip.dat... en fin... el objetivo de esto es saber de que pais visitan la pagina... Gracias
  #2 (permalink)  
Antiguo 29/10/2011, 17:47
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 14 años, 2 meses
Puntos: 511
Respuesta: Geoip

Checa esto

http://www.forosdelweb.com/f18/aport...visita-708776/

Saludos.
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 29/10/2011, 18:32
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 2 meses
Puntos: 12
Respuesta: Geoip

si lo vi y gracias... con eso solucione todo
  #4 (permalink)  
Antiguo 29/10/2011, 20:45
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 2 meses
Puntos: 12
Pregunta Respuesta: Geoip

Vi el aporte pero no se por que no funciona.

Código PHP:
    <?php
    
/**
     * This class generates the country name and its flag from its IP address
     *
     *
     * @author Rochak Chauhan
     */
    
class CountryFromIP {
     
        private 
$CountryIPDatabase 'CountryIPDatabase.txt';
        private 
$ip '';
     
        
/**
         * Function to validate IP ( please modify it according to your needs)
         *
         * @param $ip - string
         *
         * @return boolean
         */
        
public function ValdateIP($ip) {
            
$ipArray explode(',',$ip);
     
            if(
count($ipArray) != 4) {
                echo 
"<font color='red' size='3'> <b>ERROR: </b> Invalid IP</font>";
                return 
false;
            }
            else {
                return 
true;
            }
        }
     
        
/**
         * Function to return Country name from the IPDatabase
         *
         * @param $ip string
         *
         * @return string - name of the country, false otherwise
         */
        
public function GetCountryName($ip) {
            
$this->ip $ip;
            
$ip sprintf("%u"ip2long($ip));
     
            
$csvArray file($this->CountryIPDatabase);
     
            for(
$i=0$i<count($csvArray); $i++){
                
$setCsv str_replace("\""""$csvArray[$i]);
                
$arrayOfLine explode(','$setCsv);
                if(
$ip >= $arrayOfLine[0] && $ip <= $arrayOfLine[1] ) {
                    return 
$countryName $arrayOfLine[4];
                }
            }
            return 
false;
        }
     
        
/**
         *  Function to return local path to Country's flag
         *
         * @param $ip - string
         *
         * @return string - local path to flag image
         */
        
public function ReturnFlagPath() {
     
            if(
$countryName trim(ucwords(strtolower($this->GetCountryName($this->ip))) )) {
                
$countryName str_replace(' ','%20',$countryName);
                return 
"flag/$countryName.gif";
            }
            else {
                return 
false;
            }
        }
     
    }
     
    
$ip $_SERVER["REMOTE_ADDR"];
     
    
$object = new CountryFromIP();
     
    
$countryName =  $object->GetCountryName($ip);
    
$flagPath =  $object->ReturnFlagPath();
Copie el codigo tal cual y cambien el nombre del archivo pero sigue sin funcionar, alguien sabe por que?
  #5 (permalink)  
Antiguo 29/10/2011, 22:02
Avatar de zreep  
Fecha de Ingreso: octubre-2009
Ubicación: Argentina
Mensajes: 534
Antigüedad: 15 años, 2 meses
Puntos: 12
Respuesta: Geoip

Solucionado, el problema era que tomaba la ip mi servidor local y no podia indentificarla...por eso la subi a mi web y funciono bien... es mas pude hacer que guarde la ip y su pais en la base de datos...

Gracias a todos por ayuda...

Etiquetas: geoip
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:40.