PHP: ¿Cómo hago para contabilizar en php y mysql las visitas que tienen mis páginas/secciones internas en mi web?

De Foros del Web

Primero de todo crear esta base de datos MySQL con tu PhpMyAdmin: Código PHP:

CREATE TABLE `secciones` ( 
`id` INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, 
`pagina` TEXT NOT NULL, 
`contador` INT(4) NOT NULL 
);  

Ya creada la base de datos, ir agregando filas segun páginas/secciones tengas haciendo click en insertar de tu PhpMyAdmin adentro de tu base de datos:

id pagina contador

1 /index.php 0

2 /noticias.php 0

3 /juegos.php 0

4 /chat.php 0

Despues, poner este codigo en todas tus páginas/secciones:

Código PHP:

<? 
$link=mysql_connect("localhost", "db","password"); 
mysql_selectdb("secciones",$link); 
 
$pagina=$_SERVER["PHP_SELF"]; 
$SQL="UPDATE secciones SET contador= contador +1 WHERE pagina ='$pagina'"; 
 
mysql_query($sql) or die (mysql_error()); 
?> 

Para ver las estadísticas, lo podes hacer examinando tu base de datos, o creando una página .php que muestre los datos de esa base de datos de esta manera:

Código PHP:

<?php 
function Conectarse() 
{ 
   if (!($link=mysql_connect("localhost","db","password"))) 
   { 
      echo "Error conectando a la base de datos."; 
      exit(); 
   } 
   if (!mysql_select_db("db",$link)) 
   { 
      echo "Error seleccionando la base de datos."; 
      exit(); 
   } 
   return $link; 
} 
?>
<?
   $link=Conectarse(); 
   $result=mysql_query("select * from secciones",$link); 
?>
<TABLE style="border-collapse: collapse" border=1 align=center bordercolor=#666E7B CELLSPACING=1 CELLPADDING=1> 
<TR bgcolor=#292B37 bordercolor=#000000><TD bordercolor=#666E7B><center><b>ID:</b><center></TD><TD bordercolor=#666E7B><center><b>Página:</b><center></TD><TD bordercolor=#666E7B><center><b>Visitas:</b><center></TD></TR> 
<?php       
 
   while($row = mysql_fetch_array($result)) { 
      printf("<tr><td>&nbsp;%s</td><td>&nbsp;%s&nbsp;</td><td>&nbsp;%s</td></tr>", $row["id"],$row["pagina"], $row["contador"]); 
   } 
   mysql_free_result($result); 
   mysql_close($link); 
?> 

--elanime 17 Ene 2004

Este artículo es parte de las FAQs de PHP y el Manual de PHP.

Herramientas personales