Brincando com IP no PHP

Publicado por André em 23/07/2009

[ Hits: 9.840 ]

Blog: http://127.0.0.1

 


Brincando com IP no PHP



Bom, a variável global "$_SERVER" busca informações do servidor e ela pode buscar o IP, que no caso é o "REMOTE_ADDR". Então vamos definir uma variável para o IP. Ex.:

<?
$ip = $_SERVER['REMOTE_ADDR'];
echo ($ip);
?>

Ele vai mostrar seu IP. Você pode personalizar ainda mais:

<?
$ip = $_SERVER['REMOTE_ADDR'];
echo "<font face='Comic Sans MS' color='red' size='7' style='text-decoration:blink'>Seu ip é: ".$ip;
?>

Agora vamos complicar mais. Vamos usar a função de abrir arquivos "fopen()" para abrir um arquivo (exemplo: ip.txt):

$fp = fopen("ip.txt", "a");

Agora vamos escrever nesse arquivo de texto:

fputs ($fp, "texto aqui");

Vamos supor que no lugar de texto aqui fosse o IP? Você capturaria o IP da pessoa. Mas sempre quando abrir um arquivo tem que fechá-lo usando a função "fclose()".

Então formando minha explicação toda o source ficaria:

<?
$ip = $_SERVER['REMOTE_ADDR'];
$fp = fopen("ip.txt", "a");
fputs ($fp, "IP: $ip");
fclose($fp);
?>

Só que aí ele salvaria um do lado do outro sem espaços e não teria como verificar né? Então vamos usar quebra de linha "\n", ficando assim:

<?
$ip = $_SERVER['REMOTE_ADDR']. "\n";
$fp = fopen("ip.txt", "a");
fputs ($fp, "IP: $ip");
fclose($fp);
?>

Obs.: Não se esqueça de criar o arquivo ip.txt.

Espero que tenham gostado.

Outras dicas deste autor

Clickjacking - uma breve análise sobre o assunto

Causando BufferOverflow em servidores rodando o FreeFloat

Ngrep - uma ótima ferramenta para análise de pacotes

Instalando a biblioteca libxml2

Prism - Transforme sites em aplicativo

Leitura recomendada

Servidor LAMP e MediaWiki no Ubuntu Linux com apenas uma linha de comando

Hospedagem gratuita PHP/MySQL

Medindo velocidade e eficiência da internet através de sistemas online

A função header() da PHP

Criando imagens dinâmicas com PHP

  

Comentários
[1] Comentário enviado por wsilvan em 14/03/2011 - 12:38h

Opa, também tem o IP: {$_SERVER['HTTP_X_FORWARDED_FOR']}

Esse é usado em servidores que possuem o proxy HTTP.

[2] Comentário enviado por WhiteHawk em 03/01/2012 - 09:17h

Agradeço-lhe pela dica acima. Apesar de simples, pode ser bastante útil.

Até mais.



Contribuir com comentário