Ir para conteúdo

POWERED BY:

Arquivado

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

pericles.sa

Contador de visitas individual

Recommended Posts

Gostaria de um contador de visitas que conte as visitas de cada página individualmente. Para inserir no meu footer.php

 

Alguem conhece um tutorials ou script?

 

Amigo, vai no google e busca por contador de visitas php, você vai encontrar vários tutoriais!

Então procure algum que trabalhe com banco de dados, e veja como funciona certinho.

 

Depois que aprender como fazer isso, você pode estar criando vários registros na tabela do contador, e utilize um registro por página, filtrando por id ou algo do tipo. :natalhappy:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu dei uma procurada no google antes de perguntar no forum mas não encontrei nem um tutorial explicando como implementar o contador para que ele faça a contagem de cada página individualmente.

 

Eu suo iniciante em php, minha ideia é colocar o código no arquivo footer.php que será exibido em todas as páginas do site.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja bem Pericles.

 

Abaixo segue um exemplo que peguei na net(exemplo que a principio funciona somente para trabalhar com a visitação geral do site, não página por página como você precisa).

 

versão da net(sem modificações)

<?php
$con = mysql_connect('localhost', 'root', '');
$db = mysql_select_db('teste', $con);

//Busca na tabela o numero de vezes que a página ja foi visitada
$busca = "Select * FROM contador";
$exe = mysql_query($busca);

$resultado = (mysql_fetch_array($exe));
$numero = $resultado['visitas'];

//Pega o numero de visistas que consta na tabela, adiciona mais um e atualiza
$visitantes = $numero + 1;
$altera = "UPDATE contador SET visitas = '$visitantes' WHERE visitas = '$numero'";
$exe1 = mysql_query($altera);

//Faz uma nova busca e retorna o numero de visitas depois da atualização
$exe = mysql_query($busca);
$total = (mysql_fetch_array($exe));
$visitas = $total['visitas'];

echo "Visitas: $visitas";
?>

 

 

versão com algumas alterações

<?php

$con = mysql_connect('localhost', 'root', '');
$db = mysql_select_db('teste', $con);

//Aqui pegamos o id da página
$idDaPagina = "1";

//Busca na tabela o numero de vezes que a página ja foi visitada
$busca = "Select * FROM contador WHERE idPagina = {$idDaPagina}";
$exe = mysql_query($busca);

$resultado = (mysql_fetch_array($exe));

//Pega o numero de visistas que consta na tabela, adiciona mais um e atualiza
$visitantes = $resultado['visitas'] + 1;
$altera = "UPDATE contador SET visitas = '{$visitantes}' WHERE idPagina = '{$idDaPagina}'";
$exe1 = mysql_query($altera);

//Faz uma nova busca e retorna o numero de visitas depois da atualização
$exe = mysql_query($busca);
$total = (mysql_fetch_array($exe));
$visitas = $total['visitas'];

//Imprime o total de visitas na tela
echo "Visitas: $visitas";
?>

 

O valor da variável "$idDaPagina", você pode pegar de várias maneiras, mas caso não sejam muitas páginas você poderia fazer um switch ().

 

Suponhamos que sua url fique mais ou menos dessa forma

www....com.br/?pagina=empresa

www....com.br/?pagina=contato

Ai você poderia estar buscando o valor de pagina.


//recuperamos o valor de pagina
$pagina = $_REQUEST['pagina'];

//no switch () ficaria algo assim

switch ($pagina) {
 case 'home' :
   $idDaPagina = 1;
   break;
 case 'empresa' :
   $idDaPagina = 2;
   break;
 case 'contato' :
   $idDaPagina = 3;
   break;
   ;
}

 

Então com tudo isso você criaria no banco de dados, um registro para cada página, e pegando o "$idDaPagina", você pode atualizar um determinado registro. :natalhappy:

 

Abaixo segue um exemplo de tabela

//O campo nomePagina não interfere em nada, coloquei ali mais para localização mesmo.
CREATE TABLE  `contador` (
`idPagina` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nomePagina` VARCHAR( 255 ) NULL ,
`visitas` INT NOT NULL
) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_general_ci;

//Aqui eu inseri três registros para melhor entendimento
INSERT INTO `contador` (`idPagina`, `nomePagina`, `visitas`) VALUES 
(NULL, 'home', '0'), (NULL, 'empresa', '0'), (NULL, 'contato', '0');

 

Espero que isso ajude. :natalwink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Francispansa,

 

Ajudou bastante a entender a lógica de como funciona. Mas eu ainda tenho uma pergunta.

 

Os id's das páginas e as tabelas no banco de dados podem ser criados dinamicamente? O site terá muitas páginas e outras novas vão ser criadas no decorrer do tempo.

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.