Hola amigo, la verdad ese es un proyecto muy garnde y de bastante tiempo, pero en la idea esta en que debes ingresar una cuenta a un a base de datos cada vez que alguein actualice una página.
Para eso es necesario tener una base de datos como minimo con las siguientes columnas: ID,IP,TIME.
Luego muy facil en la página de estadisticas haces esto:
Código PHP:
<?php
$hostname_s = "localhost";
$database_s = "stats"; //Tienes que crear esta base de datos sobre tu servidor.
$username_s = "user"; //El usuario de acseso a tu base de datos
$password_s = "password"; // El Password de acseso a tu base de datos
$link = mysql_pconnect($hostname_s, $username_s, $password_s) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_s,$link);
$ip = $_SERVER['REMOTE_ADDR'];
$time = time();
$ultima_visitas = "10";//Ultima Visitas que se mostraran.
$sql = "INSERT INTO `stats_p` (`ip`, `time`) VALUES ('$ip','$time');";
mysql_query($sql, $link);
$sql = "SELECT `ID`, `ip`, `time` FROM `stats_p` ORDER BY time DESC LIMIT 0,$ultima_visitas";
$result = mysql_query($sql, $link);
echo "Estas son las $ultima_visitas ultimas visitas a nuestra web :<br>\n";
echo "| Ip | - | Fecha - Hora | <br>\n";
while ($row = mysql_fetch_array($result)) {
echo "| ".$row[1]." | - | ".date("d-m-Y - g:i:s a",$row[2])." | <br>\n";
}
$sql = "SELECT COUNT(*) FROM `stats_p`";
$result = mysql_query($sql, $link);
$row = mysql_fetch_array($result);
echo "En total Hay: $row[0] Impresiones <br>\n";
$sql2 = "SELECT * FROM `stats_p` GROUP BY ip ";
$result2 = mysql_query($sql2, $link);
$unique = 0;
while($row2 = mysql_fetch_array($result2)){
$unique++;
}
echo "En total Hay: $unique Visitas Únicas <br>\n";
?>
Aca te dejo el código de la SQL para crear la tabla:
CREATE TABLE `stats_p` (
`ID` int(80) NOT NULL auto_increment,
`ip` char(100) NOT NULL,
`time` int(15) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=18 ;