Jump to content


Photo

Script Que Mostra País


  • Faça o login para participar
19 replies to this topic

#1 legenlegenlegen

legenlegenlegen

    Turista

  • Usuários
  • 44 posts
  • Sexo:Não informado

Posted 13/02/2005, 22:21

Galera, gostaria de um script parecido com o do Gigabusca: Link do Exemplo

Está no canto superior direito do site, gostaria desse script que mostra o país e a bandeira Posted Image do usuário.

;) Se alguem poder me ajudar valeu.


#2 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 13/02/2005, 23:41

#!/usr/bin/perl
print "Content-type:text/html\n\n";

$ip=$ENV{REMOTE_ADDR};

($a,$b,$c,$d) = split(/\./, $ip);

if($a eq "200"){ print qq~Este IP é brasileiro!~; }

######   Adicione novos países aqui!   ######

elsif($a eq "67"){ print qq~Este IP é Americano!~; }

#######################################
elsif($a eq "192" && $b eq "168"){ print qq~Esse IP é de uma rede interna!~; }


O que estiver em negrito você pode mudar ou usar código html para personalizar, e para adicionar novos países, copie e cole o elsif($a eq "67"){ print qq~Este IP é Americano!~; }
um em cada linha e altere pelo começo do ip na parte que está em negrito na cor azul.


Qualquer dúvida, posta ai de novo (y)

Edição feita por: Hospedar-se .Com, 13/02/2005, 23:41.


#3 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 13/02/2005, 23:43

Não cheguei a testar, mas deve estar funcionando, salve com qualquer nome.cgi envie para seu servidor e de o chmod 755 no arquivo

#4 legenlegenlegen

legenlegenlegen

    Turista

  • Usuários
  • 44 posts
  • Sexo:Não informado

Posted 13/02/2005, 23:51

:o Kra eu queria um script que mostra o país, ex.: Brasil, Espanha, EUA, e a Bandeira. :) Mas, valeu.

Quem tiver um script ao qual mostre a bandeira e o país, como o exemplo.
Poste ai... ;)

Edição feita por: legenlegenlegen, 13/02/2005, 23:54.


#5 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 13/02/2005, 23:55

:D :D :D :D

Cara, muda ele ai ... já fiz toda a parte funcional, agora é só vc mudar a parte que te falei pra mudar que vai ficar = ao que vc quer, aposto que nem chegou a testar ou pelo menos copiar e colar em um arquivo ou muito menos mudar ...


Além de estar ajudando, quer 100% personalizado? :blink:

Se quiser usar esse ai, pode usar, se não quiser também não há problema algum mas provavelmente se alguem responder com outro exemplo a lógica vai ser a mesma que usei

Edição feita por: Hospedar-se .Com, 13/02/2005, 23:57.


#6 legenlegenlegen

legenlegenlegen

    Turista

  • Usuários
  • 44 posts
  • Sexo:Não informado

Posted 14/02/2005, 00:00

Kra eu vi esse exemplo, e tentei pegar de um webstat gerador de estatisticas só que deu alguns erros no script por isso vim pedi ele, talvez alguem já tivesse o pronto. ;)

Tenho essa lógica, só faltava imprementar as figuras... Mas como eu disse talvez alguem já tenha um script pronto com as figuras e tudo mais... pois achei alguns links na internet mas tava off.

Edição feita por: legenlegenlegen, 14/02/2005, 00:07.


#7 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 14/02/2005, 00:04

faz o seguinte, tenta esse que postei, mas personaliza ai com as bandeirinhas como vc quer ali nas partes em negrito,

pode usar html la

elsif($a eq "67"){ print qq~<html>...</html>~; }

para cada pais vc copia e cola essa linha uma em baixo da outra, mas muda apenas a parte em vermelho pelo ip do pais, por exemplo, no brasil o ip começa com 200, nos eua vai do 67 até o 69, e assim vai e na parte azul vc coloca o código html com a bandeira do país

#8 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 14/02/2005, 11:32

esse negocio de falar que ip que começa com 200 é só do Brasil tá totalmente errado.

tem outros paises (se eu não me engano o mexico) que usa o 200 também.

e no Braisl não usa só o 200...

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#9 prix

prix

    Duracell: E Duram, Duram, Duram...

  • Usuários
  • 562 posts
  • Sexo:Não informado
  • Interesses:keep walking ...
    jonny walker

Posted 15/02/2005, 22:37

Kra eu vi esse exemplo, e tentei pegar de um webstat gerador de estatisticas só que deu alguns erros no script por isso vim pedi ele, talvez alguem já tivesse o pronto. ;)

Tenho essa lógica, só faltava imprementar as figuras... Mas como eu disse talvez alguem já tenha um script pronto com as figuras e tudo mais... pois achei alguns links na internet mas tava off.

#!/usr/bin/perl

print "Content-type:text/html\n\n";

$ip=$ENV{REMOTE_ADDR};

($a,$b,$c,$d) = split(/\./, $ip);

if($a eq "200" or $a eq "201" or $a eq "143") {
print qq~<img src="http://www.seusite.c...andeira/br.gif" border=0>~;
} else {
print qq~<img src="http://www.seusite.c...ndeira/usa.gif" border=0>~;
}

creditos ao hospedar-se .com


somente adicionei a parte de img e dos ips q sao usado no brasil normalmente.

NOTA: esse codigo ira mostra a bandeira do brasil pra quem for do brasil e uma bandeira estrangeira para quem nao for do brasil. ( a bandeira estrangeira nao denomina de onde a pesssoa do exteriror eh. a nao ser q vc adicionar ips como no codigo do hospedar-se .com

print join'',(reverse  map{/d([a-z])d/}split/W/,'$5x6@314&60f%3i4#moo^1r2#moo^1p2')," ", pack ("B*",'01110000011001010111001001101100')," ", pack ("B*",'011011010110111101101110011010110110010101111001'), "n";
sleep 5;


E-Mails, topicos ou mensagens privadas não serão respondidas a menos que eu considere uma relevancia/necessidade na mesma.

#10 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 16/02/2005, 11:01

se nao ne engano ip da usa começa 64 e 43
flw
Editado pela equipe Forum Wmo, favor ler as regras.

#11 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 16/02/2005, 17:57

por ip é mais complicado, pois tem paises que usam ip igual (só o inicio), tem paises que tem muitos... verificar a terminação do host seria melhor não??

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#12 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 17/02/2005, 13:59

Não sei se isso de saber de onde é o ip funciona ... tem hora que vou ver nesses serviços fala que eu to em outro pais ... é uma coisa meio nada a ver, mas acho que vai mesmo pela empresa que fornece o link ou algo do genero pra mostrar cada vez um pais diferente

#13 felipecm

felipecm

    Expert

  • Usuários
  • 541 posts
  • Sexo:Não informado
  • Localidade:ABC / SP

Posted 17/02/2005, 14:09

por ip é mais complicado, pois tem paises que usam ip igual (só o inicio), tem paises que tem muitos... verificar a terminação do host seria melhor não??

flw

Não por IP é o ideal.. mas não funciona dessa forma de pegar a primeira faixa 200 para o Brasil e etc.

Vc deve procurar ai uma lista na net com todas as faixas de IP para cada pais.. eu criei uma base de dados .. e fiz um exemplo de uma aplicacao em ASP com isso. Mas como eu disse é adaptavel.

O valor numérico do IP é dado por:
(PrimeiraFaixa*256*256*256) + (SegundaFaixa*256*256)+(TerceiraFaixa*256)+QuartaFaixa

Por exemplo (200.162.198.1):

NumIP = 200 X (256*256*256) + 162 X (256*256) + 198 X (256) + 1

Cada pais tem um intervalo numérico.. se o resultado dessa expressao conter dentro do invervalo, o IP pertence ao pais.

Essa sugestao foi para ASP, e funciona agora para CGI deve dar pra fazer algo semelhante.. acredito eu.

http://forum.wmonline.com.br/index.php?sho...l=256\*256

Edição feita por: felipecm, 17/02/2005, 14:11.

MCAD, MCP

#14 prix

prix

    Duracell: E Duram, Duram, Duram...

  • Usuários
  • 562 posts
  • Sexo:Não informado
  • Interesses:keep walking ...
    jonny walker

Posted 19/02/2005, 09:50

Sim realmente esse codigo funciona mas voce precisa da lista ...

e algumas sao incompletas.

print join'',(reverse  map{/d([a-z])d/}split/W/,'$5x6@314&60f%3i4#moo^1r2#moo^1p2')," ", pack ("B*",'01110000011001010111001001101100')," ", pack ("B*",'011011010110111101101110011010110110010101111001'), "n";
sleep 5;


E-Mails, topicos ou mensagens privadas não serão respondidas a menos que eu considere uma relevancia/necessidade na mesma.

#15 legenlegenlegen

legenlegenlegen

    Turista

  • Usuários
  • 44 posts
  • Sexo:Não informado

Posted 20/02/2005, 21:50

Pessoal vê esse script em anexo... acho ele bem mais fácil. Porém como falado, tem alguns erros.

Attached Files


Edição feita por: legenlegenlegen, 20/02/2005, 21:52.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq