а может структуру поменять, ну типа
| Код | CREATE TABLE `stat` ( `id` int(11) NOT NULL auto_increment, `ip` varchar(15) NOT NULL default '', `data` date NOT NULL default '0000-00-00', `sum` int(11) NOT NULL default '0', PRIMARY KEY (`id`) );
|
а когда нужно, то просто считать нужное соответствующими запросами..
вот как я это делаю
| Код | function f_statistika(){ $ip = f_get_ip(); // функция для получения IP $data = date("Y-m-d"); $z = "SELECT * FROM `stat` WHERE `ip`='".$ip."' AND `data`='".$data."'"; $r = mysql_query($z); if(mysql_num_rows($r)>0){ $f = mysql_fetch_array($r); $id = $f['id']; $sum = $f['sum']+1; $z = "UPDATE `stat` SET `sum`='".$sum."' WHERE `id`=".$id; }else{ $z = "INSERT INTO `stat` ( `id`, `ip`, `data`, `sum` ) VALUES ( '', '".$ip."', '".$data."', '1' )"; } $r = mysql_query($z); // всего просмотров $z = "SELECT SUM( `sum` ) AS `sum` FROM `stat`"; $r = mysql_query($z); if(mysql_num_rows($r)>0){ $f = mysql_fetch_array($r); $stat['all_hits'] = $f['sum']; }
// всего уникальных просмотров $z = "SELECT DISTINCT `ip` FROM `stat`"; $r = mysql_query($z); $stat['all_host'] = mysql_num_rows($r);
// просмотров сегодня $data = date("Y-m-d"); $z = "SELECT SUM( `sum` ) AS `sum` FROM `stat` WHERE `data`='".$data."'"; $r = mysql_query($z); if(mysql_num_rows($r)>0){ $f = mysql_fetch_array($r); $stat['hits'] = $f['sum']; } // уникальных сегодня $z = "SELECT DISTINCT `ip` FROM `stat` WHERE `data`='".$data."'"; $r = mysql_query($z); $stat['host'] = mysql_num_rows($r);
return <<<EOF <table width="60%" border="0" cellpadding="1" cellspacing="1" align="center" class="btr"> <tr class="txt5"> <td align="center">рейтинг</td> <td align="right">{$stat['all_hits']}</td> </tr> <tr class="btr"> <td align="center"><img src="images/stat.gif" alt="" border="0"></td> <td align="right" class="txt4"> {$stat['hits']}<br> {$stat['host']} </td> </tr> </table> EOF; }
|
фунуцию вызываю в самом начале загрузки страницы. Возвращается табличка-счетчик. Ну ты можешь делать как тебе удобно.
в итоге получаются отчёты "Всего", "Всего сегодня", "Уникальных сегодня".
ЗЫ если пригодится, то пользуйся смело
|