Sería como poner en cada página un código (o un include) que guarde en una base de datos, por ejemplo, usuario, qué página está visitando, si es una página de resultados qué palabras clave utilizó para llegar ahí y por supuesto fecha y hora.
Luego podrás crear los reportes que quieras.
Un ejemplo:
La tabla
Código:
IdRegistro, INT(11), único, autoincrementable
Usuario, VARCHAR(100)
IP, VARCHAR(17)
URL, VARCHAR(255)
Keywords, TEXT
Fecha, DATETIME
Creas un nuevo archivo que se llame por ejemplo tracker.php
Código PHP:
<?PHP
$usuario=$funciones_de_login->nombre_de_usuario();
$ip=$_SERVER["REMOTE_ADDR"];
$urlactual=$reqesturi = $_SERVER['REQUEST_URI'];
$keywords=$_GET["query"]; //Para un buscador que busque poniendo la variable query=palabras+clave en la URL
mysql_query("INSERT INTO tracker(IdRegistro,Usuario,IP,URL,Keywords,Fecha) VALUES('','$usuario','$ip','$urlactual','$keywords',NOW())");
?>
Y en cada página en la primer línea
Código PHP:
<?PHP include("ruta/a/tracker.php"); ?>
Recuerda que la ruta es relativa a la url.
Eso tal cual dudo que te sirva, pero quizá se comprenda mejor.
Exitos.