Hola, lo encontre:
ES UN CONTADOR DE VISITAS UNICAS. SOLO SE CONTARÁ UNA VISITA POR DÍA, TENIENDO EN CUENTA LA IP.
Son 3 archivos:
conexion.php --> Conecta con la base de datos (Recorda cambiar el usuario, el pass y la db por los tuyos)
Código PHP:
<?
function conectar()
{
//Conexion con la base
mysql_connect ("localhost", "usuario", "pass");
//selección de la base de datos con la que vamos a trabajar
mysql_select_db("db");
}
function desconectar()
{
mysql_close();
}
?>
Pone el código de a continuación en las páginas en las que quieras contar las visitas:
Código PHP:
<?
$partes_ruta = pathinfo($_SERVER["PHP_SELF"]);
$pagina = $partes_ruta['filename'];
$ip = $_SERVER["REMOTE_ADDR"];
$fecha = date("Y-m-d");
if(is_file("./" . $pagina . "_visitas/" . $fecha . "_" . $ip . ".txt")){
// No agrego ninguna visita, ya que el usuario ya ingreso antes.
}else{
// Creo archivo para guardar la ip con la fecha de ese día
$archivo = fopen("./" . $pagina . "_visitas/" . $fecha . "_" . $ip . ".txt" , "w");
if ($archivo) {
fputs ($archivo, "");
}
fclose ($archivo);
// Actualizo la base de datos, agregando una visita mas
include("conexion.php");
conectar();
$result = mysql_query("SELECT * FROM tabla_visitas WHERE pagina='$pagina'");
$row = mysql_fetch_array($result);
$visitas = $row["visitas"];
$visitas1 = $visitas+1;
mysql_query("UPDATE tabla_visitas SET
visitas = '$visitas1'
WHERE pagina='$pagina'");
desconectar();
}
?>
Pone este otro código de abajo donde quieras que se muestre el "top 10"
Código PHP:
<?
include("conexion.php");
conectar();
$result = mysql_query("SELECT pagina, visitas FROM tabla_visitas ORDER BY visitas desc LIMIT 10");
desconectar();
while ($fila = mysql_fetch_object($result)){
echo "-" . $fila->pagina . ": " . $fila->visitas . "<BR>";
}
?>
IMPORTANTE: Para que funcione necesitas tener una carpeta que tenga el nombre
del archivo sin extension más "_visitas" (Ejemplo: si tenes el archivo "juegos.htm", tenes que crear dentro del mismo directorio donde está el archivo una carpeta "juegos_visitas". Esta carpeta debe tener permisos CHMOD 0777.
Tambien debes crear la base de datos-->
CREATE TABLE `tabla_visitas` (
`pagina` varchar(30) NOT NULL,
`visitas` integer(6) NOT NULL default '0',
PRIMARY KEY (`pagina`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Y completarla la columna de
`pagina` con los nombres de tus archivos sin extensión.
Si te quedan dudas, no dudes en preguntar.