Ir para conteúdo

POWERED BY:

Arquivado

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

Tafari

Tamanho da Tela do Browser por PHP e Javascript

Recommended Posts

Olá.

Preciso de uma ajuda para ver se existe uma maneira mais fácil de realizar este procedimento.

Quero fazer um contator de visitas, em php, que insere no banco de dados as informações do tamanho no navegador do usuário.

Estava fazendo em php/gd, através de uma imagem que era montada através de javascript, mas tentei uma coisa diferente...

Gostaria de opiniões...

São dois arquivos.


a ) Página onde vai ficar o contador

<html><head></head><body>
<br>
Blablablah!
<br>
<script language="javascript">

	var lar = screen.width;
	var alt = screen.height;
	var pag = "<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>";

	var file = "/include/contador.php";

	var url = file + "?lar=" +encodeURIComponent(lar)
		+ "&alt=" +encodeURIComponent(alt)
		+ "&pag=" +encodeURIComponent(pag);

	document.write('<object type="text/html" class="contador" data="' + url + '"><p>Navegador Antigo hein?</p></object>');

</script>
</body></html>

 

 

b ) Código do contador propriamente dito.

<?php
// Definindo o local do arquivo
$root = realpath($_SERVER["DOCUMENT_ROOT"]);

// Inserindo o Include com as Funções
include "$root/include/funcoes.php";

// Função que insere as informações no banco de dados e tem como return o número de visitantes.
$contador = contador(htmlspecialchars($_GET["lar"]),htmlspecialchars($_GET["alt"]),htmlspecialchars($_GET['pag']));
?>
<html><head><link rel="stylesheet" href="/css/main.css"></head><body>
<?php
echo '<div class="contador">' . $contador . '</div>';
?>
</body></html>

 

 

Isso que eu fiz é um absurdo, tem maneiras mais fácil ou é uma solução razoável?

 

Não achei na net nada parecido... A resposta padrão sempre é: não tem como misturar client-side com server-side para pegar o tamanho da página do navegador.

 

Aguardo respostas e desde já agradeço!!!

 

Abraços.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tem como misturar client-side com server-side para pegar o tamanho da página do navegador

 

Isso é verdade, o PHP não recebe muitas informações do browser em si, só o "necessário". No mais, JavaScript nele.

 

É bem fácil de fazer através de JavaScript, acho que você estava perdendo muito tempo com uma solução alternativa.

 

As definições são as seguintes, pelo menos as que eu conheço.

 

Resolução do computador (device/screen size), essa que você já reconhecia:

screen.width;
screen.height;

Apesar de jQuery ser baseado em JavaScript, é totalmente atrelado ao DOM, nesse caso você não consegue pegar a resolução do "monitor" (screen size/device size) com jQuery, somente com JavaScript.

 

Já os tamanho do browser e documento (viewport e document) ficam bem mais fácil com jQuery:

 

$(window).width(); //Largura da janela
$(window).height(); //Altura da janela
$(document).width(); //Largura do document (DOM)
$(document).height(); //Altura do document

 

Com isso, você tem as características que deseja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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