Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sanderlan Wanderley

[Resolvido] gethostbyaddr() não retorna o nome do host

Recommended Posts

<?php
	include ("../config/config.php");
 	include ("../config/connection.php");
	
	//Essa aplicação envia dados para o banco sempre que a página é aberta ou atualizada
	
	date_default_timezone_set("Brazil/East"); // Configura data e hora para Brazil/East
	
	$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']); //Verifica o nome do despositivo (hostname)
	//echo ("Dados enviados!");	
	$gravar_nome = $hostname; //variável com o nome do dispositivo
	//$gravar_status = 1; //
	//$hoje= strtotime(date("Y-m-d H:i:s")); 
	
	// grava os dados no banco MySQL
	$sql_gravar = $mysqli->query("INSERT INTO tb_status (nome) value ('$hostname') ");
?>

Boa tarde!

Essa aplicação tem a função de mandar o nome do dispositivo (o cliente é TV on-line) toda vez que a página do site é atualizada ela manda um envio com o nome e data/hora. Só que na minha rede local wamp deu certo, porem ao subir (hospedar) aplicação só retorna o IP externo (160.195.247.13) ou um host tipo porta103.cidade.internetprovedor.com.br

 

Vi que tem uns tópicos com o assunto semelhante, mais sem uma solução exceta ou uma que

eu possa usar no meu código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não há muito o que você possa fazer mesmo. REMOTE_ADDR não é confiável.

 

O melhor que você pode fazer é validar se existe algum possível proxy e buscar a informação de HTTP_X_FORWARDED_FOR:

$ipAddress = $_SERVER['REMOTE_ADDR'];
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
    $ipAddress = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
}

Entretanto, os resultados podem não ser melhores.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Gabriel,

Nossa espero que de certo, realmente estou precisando completa essa aplicação e preciso ter uma pagina de monitoramento de cada tv online.

 

Ok, irei fazer alguns teste da maneira que falou e dou um retorno em breve.

 

Sabe me dizer se tem outra maneira pra ficar acompanhando cada página que está online, pensei em da uma estudada nos cookies.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Marcos-Henrique
      Olá, 
       
      Como faço para exibir o Usuário Windows em uma página PHP?
      Tentei utilizar as superglobals e não consegui obter nenhum resultado:
      LOGON_USER, REMOTE_USER, REDIRECT_REMOTE_USER e AUTH_USER
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.