Statistics listing: http://yourdomain/yournucleusblog/list.php THIS FILE HAS TO BE PLACED IN ROOT DIR OF YOUR BLOG, TOGETHER WITH CONFIG.PHP AND INDEX.PHP! */ include('./config.php'); /* already logged-in? */ if (!$member->isLoggedIn()) { die("You have to be logged-in into Nucleus first!"); } $link = mysql_connect($MYSQL_HOST,$MYSQL_USER,$MYSQL_PASSWORD); if($link==false){ die("Cannot connect to MySQL DB.."); }; mysql_select_db($MYSQL_DATABASE) or die("Cannot select default DB..."); /* generate doctype */ echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "statistics"; echo ""; echo "
"; echo "

Simple statistics / log for your blog

"; /* set date variables */ $FROMMDAY=date("d"); $FROMMMONTH=date("m"); $FROMMYEAR=date("y"); if(isset($_POST['FROMMYDAY'])){$FROMMDAY=$_POST['FROMMYDAY'];}; if(isset($_POST['FROMMYMONTH'])){$FROMMMONTH=$_POST['FROMMYMONTH'];}; if(isset($_POST['FROMMYYEAR'])){$FROMMYEAR=$_POST['FROMMYYEAR'];}; if(strlen($FROMMDAY)==1){$FROMMDAY="0$FROMMDAY";}; if(strlen($FROMMMONTH)==1){$FROMMMONTH="0$FROMMMONTH";}; if(strlen($FROMMYEAR)==1){$FROMMYEAR="0$FROMMYEAR";}; $TOMDAY=date("d"); $TOMMONTH=date("m"); $TOMYEAR=date("y"); if(isset($_POST['TOMYDAY'])){$TOMDAY=$_POST['TOMYDAY'];}; if(isset($_POST['TOMYMONTH'])){$TOMMONTH=$_POST['TOMYMONTH'];}; if(isset($_POST['TOMYYEAR'])){$TOMYEAR=$_POST['TOMYYEAR'];}; if(strlen($TOMDAY)==1){$TOMDAY="0$TOMDAY";}; if(strlen($TOMMONTH)==1){$TOMMONTH="0$TOMMONTH";}; if(strlen($TOMYEAR)==1){$TOMYEAR="0$TOMYEAR";}; /* how much records to display */ $HOWMUCH="20"; if(isset($_POST['RECORDS'])){$HOWMUCH=$_POST['RECORDS'];} /* filter for IP and DNS? */ $MYFILTERIP=''; if(isset($_POST['FILTERIP'])){$MYFILTERIP=$_POST['FILTERIP'];} $MYFILTERDNS=''; if(isset($_POST['FILTERDNS'])){$MYFILTERDNS=$_POST['FILTERDNS'];} /* delete stats */ $time= mktime (0,0,0,date("m"),date("d")-3,date("Y")); $old= strftime("%m/%d/%y",$time); /* delete log?? */ if(isset($_POST['MYCLEAR'])){ if($_POST['MYCLEAR']=="YES"){ $deleting=strftime("%y%m%d",$time); $query="DELETE FROM NUCLEUS_HTTPLOG WHERE XDATE<'$deleting'"; sql_query($query); echo '
Everything older than '.$old.' was deleted..

'; } } /* GET filter parameters? */ if (isset($_GET['FADDR'])){ $MYFILTERIP=$_GET['FADDR']; } if (isset($_GET['FFROM'])){ $FROMMDAY=substr($_GET['FFROM'],4,2); $FROMMMONTH=substr($_GET['FFROM'],2,2); $FROMMYEAR=substr($_GET['FFROM'],0,2); } if (isset($_GET['FTO'])){ $TOMDAY=substr($_GET['FTO'],4,2); $TOMMONTH=substr($_GET['FTO'],2,2); $TOMYEAR=substr($_GET['FTO'],0,2); } $searchfilter=''; if($MYFILTERIP!=''){ $searchfilter=" $searchfilter AND (INSTR(XADDR,'$MYFILTERIP')>0) "; } if($MYFILTERDNS!=''){ $searchfilter=" $searchfilter AND (INSTR(XDNS,'$MYFILTERDNS')>0) "; } echo "
"; echo "From: "; echo " "; echo " "; echo "   "; echo "   ||   To: "; echo " "; echo " "; echo "

"; echo "

"; echo "  "; echo "

"; echo "
"; echo "  "; echo "
"; echo "
"; /* -------------- 1 ---------- */ if($_POST['LISTSELECT']=='1' || $_GET['FTYPE']=='1'){ echo "

Daily list sorted, in descending order, by date and time

"; echo ""; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $frommydate="$FROMMYEAR$FROMMMONTH$FROMMDAY"; $tomydate= "$TOMYEAR$TOMMONTH$TOMDAY"; $query = mysql_query("select * from NUCLEUS_HTTPLOG where (XDATE>='$frommydate') and (XDATE<='$tomydate') $searchfilter order by UID desc LIMIT 0,$HOWMUCH"); $num=1; $style='two'; while ( $msg = mysql_fetch_array( $query )) { $style=='one' ? $style='two' : $style='one'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $num++; }; echo "

ID

Date

Time

IP

DNS

Agent

URI

Referrer

'.$num.''.substr($msg['XDATE'],2,2).'/'.substr($msg['XDATE'],4,2).''.$msg['XTIME'].' '.$msg['XADDR'].' '.$msg['XDNS'].' '.$msg['XAGENT'].' '.$msg['XPATH'].' '.$msg['XREFERER'].' 

"; } /* end --1-- */ /* -------------- 2 ---------- */ if($_POST['LISTSELECT']=='2'){ echo "

Daily list grouped by IP address, and sorted by date and time

"; echo ""; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $frommydate="$FROMMYEAR$FROMMMONTH$FROMMDAY"; $tomydate= "$TOMYEAR$TOMMONTH$TOMDAY"; $query = mysql_query("select * from NUCLEUS_HTTPLOG where (XDATE>='$frommydate') and (XDATE<='$tomydate') $searchfilter order by XADDR asc, UID desc LIMIT 0,$HOWMUCH"); $lastaddr=""; $ipnum=0; $style='two'; while ( $msg = mysql_fetch_array( $query )) { if ($lastaddr!=$msg['XADDR']){ $num=1; $lastaddr = $msg['XADDR']; /* empty line */ echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; /* header */ echo ''; $ipnum++; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; /* ip and dns */ echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $style='two'; } /* details */ $style=='one' ? $style='two' : $style='one'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $num++; }; echo "
      
      

'.$ipnum.'

   

'.$msg['XADDR'].'

'.$msg['XDNS'].'

IDDateTimeBrowserURIReferrer
'.$num.''.substr($msg['XDATE'],2,2).'/'.substr($msg['XDATE'],4,2).''.$msg['XTIME'].' '.$msg['XAGENT'].' '.$msg['XPATH'].' '.$msg['XREFERER'].' 

"; } /* end --2-- */ /* -------------- 3 ---------- */ if($_POST['LISTSELECT']=='3'){ echo "

Information about browsers

"; echo ""; echo ''; echo ''; echo ''; echo ''; $frommydate="$FROMMYEAR$FROMMMONTH$FROMMDAY"; $tomydate= "$TOMYEAR$TOMMONTH$TOMDAY"; $query = mysql_query("select count(*) as XTOTAL, max(XAGENT) as XAG from NUCLEUS_HTTPLOG where (XDATE>='$frommydate') and (XDATE<='$tomydate') $searchfilter group by XAGENT order by XTOTAL desc"); $num=1; $style='two'; while ( $msg = mysql_fetch_array( $query )) { $style=='one' ? $style='two' : $style='one'; echo ''; echo ''; echo ''; echo ''; $num++; }; echo "

User agent

Total views

'.$msg['XAG'].' '.$msg['XTOTAL'].' 

"; } /* end --3-- */ /* -------------- 4 ---------- */ if($_POST['LISTSELECT']=='4'){ echo "

Daily unique IP address list, sorted, in descending order, by date and time

"; echo ""; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $frommydate="$FROMMYEAR$FROMMMONTH$FROMMDAY"; $tomydate= "$TOMYEAR$TOMMONTH$TOMDAY"; $fullquery=mysql_query("select MIN(UID) AS XUID, COUNT(UID) AS XTOTAL from NUCLEUS_HTTPLOG where (XDATE>='$frommydate') and (XDATE<='$tomydate') $searchfilter group by XADDR order by UID DESC LIMIT 0,$HOWMUCH"); $num=1; $style='two'; while ( $fullmsg = mysql_fetch_array( $fullquery )) { $style=='one' ? $style='two' : $style='one'; $xuid=$fullmsg['XUID']; $query = mysql_query("select * from NUCLEUS_HTTPLOG where UID='$xuid'"); $msg = mysql_fetch_array( $query ); echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; $num++; }; echo "

ID

Date

Time

IP

DNS

Agent

Views

URI

Referrer

'.$num.''.substr($msg['XDATE'],2,2).'/'.substr($msg['XDATE'],4,2).''.$msg['XTIME'].' '.$msg['XADDR'].' '.$msg['XDNS'].' '.$msg['XAGENT'].' '.$fullmsg['XTOTAL'].' '.$msg['XPATH'].' '.$msg['XREFERER'].' 

"; } /* end --4-- */ if( (!isset($_POST['LISTSELECT'])) && (!isset($_GET['FTYPE'])) ){ echo "Please select statistics you want to view in drop-down menu and press View button."; echo "
"; } /* closing... */ echo "
Copyright © Radek Hulán. You can use this script freely, modify it, redistribute it. No warranties whatsoever implied."; echo "
"; mysql_close($link); ?>