Hola
Aquí te dejo este código lo único que necesitas una base de datos Mysql
solo incluyes el código php ej:
include('contador.php') en la pagina que quieres que sea contada.
el resultado lo obtiene de esta manera, si estas en la pagina index te dice cuantas beses a sido visitada y si esta en pagina1.php también te dice cuantas veces a sido visitada esa pagina etc.
osea que el conteo lo hace individual en cada pagina php.
Código PHP:
<?php
/************************
Usa este código para crear la Table en: MySQL
CREATE TABLE `stats_pagecounter` (
`id` int(25) NOT NULL auto_increment,
`page_name` varchar(255) NOT NULL default '',
`page_hits` int(25) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM;
**************************
Inicio Contador
*************************/
function page_count($page) {
$c_link = mysql_connect('localhost', 'username', 'password')
or die('counter CONNECT error: '.mysql_errno().', '.mysql_error());
mysql_select_db('database_name');
$c_query = "SELECT * FROM stats_pagecounter
WHERE (page_name = '$page')";
$c_result = mysql_query($c_query, $c_link)
or die('counter SELECT error: '.mysql_errno().', '.mysql_error());
if (mysql_num_rows($c_result)) {
$row=mysql_fetch_array($c_result,MYSQL_ASSOC);
$pcounter = $row['page_hits']+1;
$c_update = "UPDATE stats_pagecounter
SET page_hits = '$pcounter' WHERE page_name = '$page'";
$c_hit = mysql_query($c_update, $c_link)
or die('counter UPDATE error: '.mysql_errno().', '.mysql_error());
} else {
$c_insert = "INSERT INTO stats_pagecounter
VALUES ( '0', '$page', '1')";
$c_page = mysql_query($c_insert, $c_link)
or die('counter INSERT error: '.mysql_errno().', '.mysql_error());
$pcounter = 1;
}
mysql_free_result($c_result);
mysql_close($c_link);
return $pcounter;
}
$phpself_url = $_SERVER['SERVER_NAME'].
$_SERVER['PHP_SELF'].'?'.
$_SERVER['QUERY_STRING'];
$page_hits = page_count($phpself_url);
/************************
FIN Contador
*************************/
/************************
echo $page_hits;
************************/
echo $page_hits;
?>