Ir para conteúdo

Arquivado

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

Marco Aurelio de Souza

Contador PHP

Recommended Posts

Ola pessoal...

 

Seguinte, peguei esse codigo, nao lembro mais de quem, aqui no Imasters:

 

conta.php

 

<?

$linha=file("contador.txt"); //define arquivo onde ficara gravado os acessos

 

if (isset($var)){ //verifica cookie

echo "$linha[0]"; //imprime linha 0 caso cookie existente

}else{ //<-+

$visitas = $linha[0]; // |

$visitas += 1; // |

$cf=fopen("contador.txt","w"); // |->incrementa 1 ao contador e exibe linha 0

fputs($cf,"$visitas"); // | se cookie inexistente

fclose($cf); // |

echo "$visitas"; // |

} //<-+

?>

 

index.php

 

<?

 

setcookie('var','jaentrou'); //cria um cookie que expira ao fechar do browser

include("conta.php"); //incluí o php que processa o contador

 

?>

 

Legal ne? pois bem...

 

na instrucao do amigo.... diz que é pra eu colocar o index.php no local aonde é pra aparecer o contador.

legal...eu ponho la no finalzinho da minha pagina inicial e pra minha surpresa nao aparece nada.

 

Acredito que eu esteja errando em algum lugar. Talvez até nao esteja colocando o codigo no local certo.

 

Se alguem puder ajudar, fico grato.

 

No aguardo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Marco Aurelio de Souza... Tudo bem...

 

Olha só, você estava colocando a Criação do COOKIE dentro do HTML e assim não funfa... Ok...

 

Modifiquei e ficou assim:

 

Contador.php ... Msm coisa...

<?$linha=file("contador.txt"); //define arquivo onde ficara gravado os acessosif (isset($var)){ //verifica cookieecho "$linha[0]"; //imprime linha 0 caso cookie existente}else{ //<-+ $visitas = $linha[0]; // |$visitas += 1; // |$cf=fopen("contador.txt","w"); // |->incrementa 1 ao contador e exibe linha 0fputs($cf,"$visitas"); // | se cookie inexistentefclose($cf); // |echo "$visitas"; // |} //<-+?>

Index.php

 

<?phpsetcookie('var','jaentrou'); //cria um cookie que expira ao fechar do browser?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><br /><br /><br /><center>Teste de COOKIE</center><?include("Contador.php"); //incluí o php que processa o contador ?></body></html>

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alexandre....brigadao pela ajuda.... mas seguinte:

 

e a minha pagina (index.html)?

 

eu tenho que jogar todo o conteudo do meu index, na pagina index.php? nao entendi ainda essa parte...

 

Exemplo: 3 paginas - index.html (que tera o contador) - sobre.html e contato.html.

 

Nao entendi aonde ou como eu coloco o codigo que você alterou....

 

Mais uma vez obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Marco desculpa a demora... Estava no Armoço e esquici que estava logado...

 

Neste caso você tem utilizar todas as páginas com extenção PHP... Ok...

 

Modifiquei o script:

 

Contador.php

<?$Ip = $_SERVER['REMOTE_ADDR'];if(isset($_COOKIE['Visitas']) && $_COOKIE['Visitas'] != $Ip){	$Contador = 'Contador.txt';	if(file_exists($Contador))	{		$Ler = fopen($Contador, 'r');		// Pega o Algarismo		$Numero = (int)fread($Ler, 1024);		// Acrescenta um(1) ao Contador		$Numero ++;		// Fecha Arquivo		fclose($Ler);		// Abre o Arquivo		$Abre = fopen($Contador, 'w');		// Grava no Contador		fputs($Abre, $Numero);		// Fecha Arquivo		fclose($Abre);		// Mostramos o Número de Acessos		echo $Numero;	}}else{	$Contador = 'Contador.txt';	if(file_exists($Contador))	{		$Ler = fopen($Contador, 'r');		// Pega o Algarismo		$Numero = (int)fread($Ler, 1024);		// Fecha Arquivo		fclose($Ler);		echo $Numero;	}}?>

index.php

 

<?php$Ip = $_SERVER['REMOTE_ADDR'];if(isset($_COOKIE['Visitas']) && $_COOKIE['Visitas'] != $Ip){	// COOKIE válido por um(1) Dia...	setcookie('Visitas', $Ip, time() + 3600 * 24 * 1);}?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><br /><br /><br /><center>Teste de COOKIE</center><?//incluí o php que processa o contador include("Contador.php");?><br /><br /></body></html>

Ok...

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

entendi.....

 

agora, as suas modificacoes foram exatamente pra que? pode me explicar?

 

mais uma vez e quantas necessarias, OBRIGADO.

 

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

 

acho que entendi..... ele "armazena" o ip de acesso e, se for o mesmo ip, nao conta+1 é isso?

 

isso aparece como texto, certo? praeu colocar imagem é muito complicado?

 

XXXX visitas bla bla bla (imagem)

 

Desculpe e obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, tentei fazer algo assim pra incluir imagens nos contadores:

 

<?php

$arquivo = "contador.txt";

$contador = 0;

 

$fp = fopen($arquivo,"r");

$contador = fgets($fp, 26);

fclose($fp);

 

++$contador;

 

$fp = fopen($arquivo,"w+");

fwrite($fp, $contador, 26);

fclose($fp);

?>

 

<table width="102" border="0" align="center" cellpadding="0" cellspacing="0">

<tr>

<?php

 

/* Arrumo de 0-9 nome dos arquivos gifs*/

$numero[0]="0.gif";

$numero[1]="1.gif";

$numero[2]="2.gif";

$numero[3]="3.gif";

$numero[4]="4.gif";

$numero[5]="5.gif";

$numero[6]="6.gif";

$numero[7]="7.gif";

$numero[8]="8.gif";

$numero[9]="9.gif";

 

/*Cria-se variável para que contenha a longitude da cadeia*/

/*é a partir daí onde se sabe que mostrará o contador em GIFS*/

 

$longitude = strlen ($contador);

 

/* Loops para mostrar os números*/

$ate = 6-$longitude;

 

For ($celula = 1;$celula <= $ate;$celula++)

{

echo "<td width=\"15\" height=\"25\" valign=\"top\"><div align=\"center\"><img src=\"$numero[0]\"></div></td>";

}

$ate = $longitude-1;

For ($celula = 0;$celula <= $ate;$celula++)

{

$num = substr ($contador, $celula, 1);

echo "<td width=\"15\" height=\"25\" valign=\"top\"><div align=\"center\"><img src=\"$numero[$num]\"></div></td>";

}

 

?>

 

 

Lembrando que isso, esta na minha pagina principal.php

 

 

Aparecem os gifs, todos eles zerados e, mesmo com o acesso continuo, inclusive de outros locais, nao esta incrementando. continua zerado.

 

Alguem pode ajudar?

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.