• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

magician

Localização através de IP

9 mensagens neste tópico

Boas tenciona agora que tenho algum tempo livre começar um projecto que já tenho em mente a algum tempo.

Mas para isso preciso de saber onde posso conseguir saber através do endereço de ip a região da ligação, é óbvio que não pretendo saber morada e numero da porta lol :) quero apenas a região, exemplo Évora, Lisboa, Porto assim deste género. Não sei como mas penso que os ISPs atribuem os ips pela zona devem ter determinados IP Ranges para determinadas zonas do pais. Alguém sabe onde posso encontrar essa informação ?

O objectivo final será criar uma aplicação web maioritariamente php e js que funcione género GPS.

Se alguém quiser dar uma ajuda também é bem vinda :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Criei um script em 6 minutos que detecta o ip, país, cidade, isp... :D :D

<?php
$fp = fsockopen( 'www.ip-adress.com', 80, $errno, $errstr, 5 );

if(!$fp) {
        die( "$errstr ($errno)\n" );
}

$out = "GET / HTTP/1.1\r\n";
$out .= "Host: www.ip-adress.com\r\n";
$out .= "User-Agent: Mozilla/5.0 (X11; U; Linux i686; pt-BR; rv:1.8.1.1) Gecko/20061208 Firefox/2.0.0.1\r\n";
$out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);

$data = '';

while (!feof($fp)) {
        $data .= fgets($fp, 20000);
}

fclose( $fp );

preg_match_all( '/<font face="verdana" size="2">(.*)<\/font>/', $data, $match );

echo implode( " ", $match[1] );

?>

O resultado é mais ou menos assim:

My ip address: 213.22.20.147 IP country: IP state: Lisboa IP city: Queluz latitude: 38.7500 longitude: -9.2500 isp: Interoute organization: TVCABO-Portugal Cable Modem Network your

Depois podes melhorar :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hummm a ideia é boa :) Embora a Cidade não deu muito certo :D  vou testar com as bases de dados da maxmind para comparar resultados.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Criei um script em 6 minutos que detecta o ip, país, cidade, isp... :D :D

<?php
$fp = fsockopen( 'www.ip-adress.com', 80, $errno, $errstr, 5 );

if(!$fp) {
        die( "$errstr ($errno)\n" );
}

$out = "GET / HTTP/1.1\r\n";
$out .= "Host: www.ip-adress.com\r\n";
$out .= "User-Agent: Mozilla/5.0 (X11; U; Linux i686; pt-BR; rv:1.8.1.1) Gecko/20061208 Firefox/2.0.0.1\r\n";
$out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);

$data = '';

while (!feof($fp)) {
        $data .= fgets($fp, 20000);
}

fclose( $fp );

preg_match_all( '/<font face="verdana" size="2">(.*)<\/font>/', $data, $match );

echo implode( " ", $match[1] );

?>

O resultado é mais ou menos assim:

My ip address: 213.22.20.147 IP country: IP state: Lisboa IP city: Queluz latitude: 38.7500 longitude: -9.2500 isp: Interoute organization: TVCABO-Portugal Cable Modem Network your

Depois podes melhorar :)

fiquei confuso com o teu código...importas-te de explicar

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É simples ele usa o site ip-adress.com para fazer o rastreio de IP, é só ler a info dada pelo site.

De uma forma simples e reduzida é isso que ele faz.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora