← Desenvolvimento

Geo-tracking - descobre a origem do teu visitante

Lida 14453 vezes

Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

De geo-tracking muito se fala por aí. Como é que eu posso mandar os meus visitantes improdutivos "pastar" para outros prados? Ou como é que eu posso enviar um grego para um sponsor que eu sei que paga bem e converte na Grécia?

A solução é geo-tracking, descobrir a nacionalidade dos nossos visitantes e colocar essa descoberta ao nosso serviço.

De que é que precisamos?

1. de uma base de dados com a informação relativamente à localização física do visitante, essa arranja-se à borla aqui:

Homepage: http://www.ip2nation.com/
Download: http://www.ip2nation.com/ip2nation.zip

2. De um script em php que vá ler a base de dados e que faça aquilo que o mandamos fazer. Deixo-vos um exemplo:

Código: [Seleccione]
<?php
$server   
""// MySQL hostname
$username ""// MySQL username
$password ""// MySQL password
$dbname   ""// MySQL db name
$ip =  $_SERVER['REMOTE_ADDR'&#93;;

$db mysql_connect&#40;$server, $username, $password&#41; or die&#40;mysql_error&#40;&#41;&#41;;
      
mysql_select_db&#40;$dbname&#41; or die&#40;mysql_error&#40;&#41;&#41;;

$sql "SELECT country FROM ip2nation WHERE ip < INET_ATON&#40;'$ip'&#41; ORDER BY ip DESC LIMIT 0,1";

$country =  mysql_result&#40;mysql_query&#40;$sql&#41;, 0, 0&#41;;

switch &#40;$country&#41;
&#123;
    
case 'us'&#58;
        
header&#40;"Location&#58; http&#58;//www.yahoo.com/"&#41;;
        
break;
    case 
'uk'&#58;
        
header&#40;"Location&#58; http&#58;//uk.yahoo.com/"&#41;;
        
break;
    case 
'au'&#58;
        
header&#40;"Location&#58; http&#58;//au.yahoo.com/"&#41;;
        
break;
    case 
'no'&#58;
        
header&#40;"Location&#58; http&#58;//no.yahoo.com/"&#41;;
        
break;
    case 
'it'&#58;
        
header&#40;"Location&#58; http&#58;//it.yahoo.com/"&#41;;
        
break;
    case 
'dk'&#58;
        
header&#40;"Location&#58; http&#58;//dk.yahoo.com/"&#41;;
        
break;
    case 
'in'&#58;
        
header&#40;"Location&#58; http&#58;//in.yahoo.com/"&#41;;
        
break;
    case 
'de'&#58;
        
header&#40;"Location&#58; http&#58;//de.yahoo.com/"&#41;;
        
break;
    case 
'fr'&#58;
        
header&#40;"Location&#58; http&#58;//fr.yahoo.com/"&#41;;
        
break;
    case 
'es'&#58;
        
header&#40;"Location&#58; http&#58;//es.yahoo.com/"&#41;;
        
break;
    default&
#58;
        
header&#40;"Location&#58; http&#58;//www.yahoo.com/"&#41;;
&#125;
?>
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

eheh... eu sei que tu me lês os pensamentos ;)

E tipo esse script php tem de estar numa página em php certo?

Não posso por na minha pois não? :S
Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

Podes, desde que a graves como .php
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

...e que o servidor tenha suporte php.
Offline

MiguelTavares 
Membro
Mensagens 3871 Gostos 0
Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3

Excelente fpware! :D
Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

Citação de: "morpheus"
...e que o servidor tenha suporte php.


Acho que o do Tartaruga tem ;)
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

quê? queres dizer que eu posso fazer a minha página tal e qual como costumo fazer e depois no fim mudar-lhe a terminação como php?
Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

Não, terás de usar o código que te dei.

Podes criar páginas com código html e php e gravá-la como php claro.
Offline

MiguelTavares 
Membro
Mensagens 3871 Gostos 0
Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3

Pois...

Para teres a terminação .php e para correr certos scripts, não é necessário que "codas" a página em php.

Basta teres as tags <? .................... ?> para que essa zona seja "compilada" pelo servidor PHP.
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

Obrigado MeNz vou fazer uma experiência e depois digo coisas!
Offline

MiguelTavares 
Membro
Mensagens 3871 Gostos 0
Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3

Ok!

Se precisares de alguma coisa... já sabes!
Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

Citação de: "MeNz"
Pois...

Para teres a terminação .php e para correr certos scripts, não é necessário que "codas" a página em php.

Basta teres as tags <? .................... ?> para que essa zona seja "compilada" pelo servidor PHP.


Óbvio, so tenho medo é que ele faça m****
Offline

MiguelTavares 
Membro
Mensagens 3871 Gostos 0
Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3

:lol:  :lol: Eu já ofereci ajuda... se ele vir que a precisa, já sabe que pode sempre contar cmg!
Offline

fpware 
Fundador
Mensagens 15318 Gostos 6
Troféus totais: 38
Trófeus: (Ver todos)
Linux User Mobile User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5

:lol:  :lol:  :lol: Foi por isso que fui tão sumário na minha resposta ;)
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

tks