Tutorial: Mostrar conteúdo de acordo com o PAÍS (Simples)

  • Autor Autor deskpro123
  • Data de início Data de início
Este tópico foi traduzido automaticamente do espanhol. Ver original
Bom, para mim não serviu completamente 🙁 , eu precisava mostrar certa página para países como Noruega, Portugal, Reino Unido, Suíça e Espanha, Mas só funcionou a da Espanha, as outras só abriam a página que deveria ser no caso de não serem nenhum dos anteriores :sorrow:
 
Bem, para mim não funcionou completamente 🙁 , eu precisava mostrar certa página para países como Noruega, Portugal, Reino Unido, Suíça e Espanha, mas só funcionou a da Espanha, as outras só abriam a página que deveria ser caso não fossem nenhum dos anteriores :sorrow:

PHP:
 <?php

$var = file_get_contents('http://www.telize.com/geoip/'.$_SERVER['REMOTE_ADDR']);
$api = json_decode($var);

if($api->country_code == 'NO'){
//Noruega
}else if($api->country_code == 'PT'){
//Portugal
}else if($api->country_code == 'GB'){
//Reino unido
}
//etc....
?>
 
PHP:
 <?php

$var = file_get_contents('http://www.telize.com/geoip/'.$_SERVER['REMOTE_ADDR']);
$api = json_decode($var);

if($api->country_code == 'NO'){
//Noruega
}else if($api->country_code == 'PT'){
//Portugal
}else if($api->country_code == 'GB'){
//Reino unido
}
//etc....
?>

PHP:
<?php 

$var = file_get_contents('http://www.telize.com/geoip/'.$_SERVER['REMOTE_ADDR']); 
$api = json_decode($var); 

if($api->country_code == 'DE'){ 
header('Location: /Germany/Germany.html');
    }else if($api->countryCode == 'FR'){
        header('Location: /Frances/Frances.html');
    }else if($api->countryCode == 'GB'){
        header('Location: /English/EnglishFb.html');
		}else if($api->countryCode == 'NO'){
			header('Location: /Norway/Norway.html');
			}else if($api->countryCode == 'PT'){
				header('Location: /Portugal/Portugal.html');
               }else if($api->country_code == 'SZ'){ 
				header('Location: /Germany/Germany.html');
               }else if($api->country_code == 'ES'){ 
				header('Location: /Español/Español.html');
				}else{
					header('Location: /English/English.html');
} 

?>

Assim é como eu tenho e nada 🙁
 
PHP:
<?php 

$var = file_get_contents('http://www.telize.com/geoip/'.$_SERVER['REMOTE_ADDR']); 
$api = json_decode($var); 

if($api->country_code == 'DE'){ 
header('Location: /Germany/Germany.html');
    }else if($api->countryCode == 'FR'){
        header('Location: /Frances/Frances.html');
    }else if($api->countryCode == 'GB'){
        header('Location: /English/EnglishFb.html');
		}else if($api->countryCode == 'NO'){
			header('Location: /Norway/Norway.html');
			}else if($api->countryCode == 'PT'){
				header('Location: /Portugal/Portugal.html');
               }else if($api->country_code == 'SZ'){ 
				header('Location: /Germany/Germany.html');
               }else if($api->country_code == 'ES'){ 
				header('Location: /Español/Español.html');
				}else{
					header('Location: /English/English.html');
} 

?>

Assim é como eu tenho e nada 🙁

mmm mas você entrou de um IP de outro país?... se seu IP é da Espanha você só vai ver o da Espanha... ou caso não encontre nenhum você vai ver em inglês... (coloque um die(); depois de cada header)
 
mmm mas você entrou de um IP de outro país?... se seu IP é da Espanha você só vai ver o da Espanha... ou caso não encontre nenhum você vai ver em inglês... (coloque um die(); depois de cada header)

Meu IP não é de nenhum desses países, estive testando mudando cada IP do respectivo país, e só abriu "/Español/Español.html" quando me conectei da Espanha, do resto, abriu em inglês. Ok, já vou colocar e tentarei usar outros IPs para ver se funciona
 
[MENTION=25010]deskpro123[/MENTION] Aos favoritos 🙂
 
Vem a calhar, muito obrigado!!
 
mmm mas você entrou de um IP de outro país?... se seu IP é da Espanha você só vai ver o da Espanha... ou caso não encontre nenhum você vai ver em inglês... (coloque um die(); depois de cada header)

Nop, igual, só a Espanha abriu como deveria :sorrow: , suponho que este tutorial não é para mim 🙁 , obrigado de qualquer forma :encouragement:
 
Nop, igual, só a Espanha abriu como deveria :sorrow: , suponho que este tutorial não é para mim 🙁 , obrigado de qualquer forma :encouragement:

mmm para mim está funcionando bem... faça isso, passe o IP que você está testando por:
Inserir CODE, HTML ou PHP:
http://www.telize.com/geoip/**ACA_IP**
assim você vê o que detecta...
 
mmm para mim está funcionando bem... faça isso, passe o IP que você está testando por:
Inserir CODE, HTML ou PHP:
http://www.telize.com/geoip/**ACA_IP**
assim você vê o que detecta...

Eu fiz, com um IP de Portugal, e detectou que estava em Lisboa, mas o código completo não funcionou, mas desta forma sim:

PHP:
<?php 

$var = file_get_contents('http://www.telize.com/geoip/'.$_SERVER['REMOTE_ADDR']); 
$api = json_decode($var); 

if($api->country_code == 'PT'){ 
header('Location: /Portugal/Portugal.html'); die();

}else{
header('Location: /English/English.html'); die();
} 

?>

Depois de me desconectar, me mandou para o Inglês. Vou adicionando país por país, para ver onde está o erro

- - - Atualizado - - -

mmm para mim está funcionando bem... faça isso, passe o IP que você está testando por:
Inserir CODE, HTML ou PHP:
http://www.telize.com/geoip/**ACA_IP**
assim você vê o que detecta...

Já encontrei o erro :distant: , estava colocando ContryCode, em vez de contry_code 😡 :topsy_turvy:

Assim é como você tem, na edição que você fez no tópico, você tem que corrigir também :drunk:
 
Última edição:
Assim é como você tem, na edição que você fez no tópico, você tem que corrigir também :drunk:

meu código está certo... se você reparar, " Última Edição por cicklow; 09-jul-2015 às 23:54 " no dia 9 de julho mudei o código... além disso, o último exemplo que te dei, te dei certo... você ainda assim usava o código errado
 
Alguém conseguiu fazer o script funcionar no WordPress?
e se sim, onde vocês colocaram? no page.php?
 
[MENTION=9679]cicklow[/MENTION] algum código que funcione hoje em dia????
 
telelize agora é pago... podem usar: https://freegeoip.net/?

OBRIGADO
O código ficaria assim:
Inserir CODE, HTML ou PHP:
<?php
    $var = file_get_contents('http://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
    $api = json_decode($var);

    if($api->country_code == 'MX'){
        echo 'algo para mexico';
    }else if($api->country_code == 'AR'){
         echo 'alago para argentina';
    }else if($api->country_code == 'ES'){
        echo 'algo para españa';
    }else{
    echo 'otros paises';
    }

?>
Link eliminado assim sim funciona
mas se eu quisesse que mostrasse adsense em um determinado país como eu teria que colocar?
 
OBRIGADO
O código ficaria assim:
Inserir CODE, HTML ou PHP:
<?php
    $var = file_get_contents('http://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
    $api = json_decode($var);

    if($api->country_code == 'MX'){
        echo 'algo para mexico';
    }else if($api->country_code == 'AR'){
         echo 'alago para argentina';
    }else if($api->country_code == 'ES'){
        echo 'algo para españa';
    }else{
    echo 'otros paises';
    }

?>
Link removido assim sim funciona
mas se eu quisesse que mostrasse adsense em um determinado país como eu teria que colocar?
PHP:
<?php
    $var = file_get_contents('http://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
    $api = json_decode($var);

    if($api->country_code == 'MX'){
        echo 'adsense';
    }

?>
 
PHP:
<?php
    $var = file_get_contents('http://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
    $api = json_decode($var);

    if($api->country_code == 'MX'){
        echo 'adsense';
    }

?>
[MENTION=9679]cicklow[/MENTION] assim não funciona, já testei
 
[MENTION=9679]cicklow[/MENTION] assim não funciona, já testei

algo você fez errado, porque esse code aí está certo... verifique se o código do adsense não tem aspas simples ( ' )
 
Obrigado [MENTION=9679]cicklow[/MENTION] eu estava procurando isso para um pequeno experimento
 

Tópicos similares

Voltar
Topo