Excellent!

At 12:48 23/01/01, you wrote:
>Here's a spin on Bob's approach:
>
>An include at the top of index.php
>
>start -------------------------------------------------------------
>$host = isset($REMOTE_HOST) ? $REMOTE_HOST : $REMOTE_ADDR;
>
>  //insert info
>  $Query = "INSERT INTO activity_log ";
>  $Query .= "(Day, Hour, Browser, Version, Platform, Referer, Time, Screen,
>Department, Item, SID, Search, Basket, User) ";
>  $Query .= "VALUES ('" . date('Ymd', mktime()) . "', '" . date('H',
>mktime()) . "', ";
>  $Query .= " '$Browser_Name', '$Browser_Version', '$Browser_Platform', '" .
>$host . "', '" . time() . "', ";
>  $Query .= " '$SCREEN', '$department', '$item', '$sid', '$inputKeywords',
>'$sku', '" . $UserInfo['ID'] . "') ";
>  if(!($DatabaseResult = mysql_query($Query, $DatabaseLink)))
>  {
>   $ActionResults[] =  mysql_errno() . ": " . mysql_error();
>   $ActionResults[] =  $Query;
>  }
>stop -------------------------------------------------------------
>
>the DB looks like this:
>
>CREATE TABLE activity_log (
>    Day int(11) DEFAULT '0' NOT NULL,
>    Hour int(11) DEFAULT '0' NOT NULL,
>    Browser varchar(8) DEFAULT 'OTHER' NOT NULL,
>    Version float DEFAULT '0' NOT NULL,
>    Platform varchar(8) DEFAULT 'OTHER' NOT NULL,
>    Referer varchar(40) NOT NULL,
>    Time int(11) DEFAULT '0' NOT NULL,
>    Screen text NOT NULL,
>    Department int(11) DEFAULT '0' NOT NULL,
>    Item int(11) DEFAULT '0' NOT NULL,
>    SID varchar(25) NOT NULL,
>    Search varchar(35) NOT NULL,
>    Basket varchar(25) NOT NULL,
>    User int(5) DEFAULT '0' NOT NULL
>);
>
>Then you can do reports like this:
>
>start------------------------------------------------
>$Query = "SELECT Screen, count(*) AS count ";
>  $Query .= "FROM activity_log ";
>  $Query .= "WHERE Screen != 'user_activity' ";
>  $Query .= "GROUP BY Screen ORDER BY count DESC";
>  if ( !($DatabaseResult = mysql_query($Query, $DatabaseLink)) ) {
>   print(" " . mysql_errno() . ": " . mysql_error() .  "Query was $Query\n");
>  } else {
>
>   print "<table border='0'>\n";
>   print "<th>\nScreen Title</th>\n";
>   print "<th>\nScreen</th>\n";
>   print "<th>\nHits</th>\n";
>   $row_no = "1";
>
>   while($DatabaseRow = mysql_fetch_array($DatabaseResult)) {
>
>    $Screen = $DatabaseRow['Screen'];
>    $ScreenTitle = $ScreenInfo[$Screen][0];
>    $Qty = $DatabaseRow['count'];
>
>   if ($row_no % 2 == 0) {
>     $bg_clr = '#FFFFFF';
>    } else {
>     $bg_clr = '#EEEEEE';
>    }
>
>    print "<tr bgcolor='$bg_clr'>\n";
>    print "<td>\n &nbsp;$ScreenTitle &nbsp; </td>\n";
>    print "<td>\n &nbsp;$Screen &nbsp; </td>\n";
>    print "<td>\n &nbsp;$Qty &nbsp; </td>\n";
>    print "</tr>\n";
>
>    $row_no++;
>
>   }
>
>  print "</table>\n";
>}
>stop--------------------------------------------------------
>
>There are a number of reports that you can create from the information being
>collected. If you do a query on the items, the type of things users are
>searching...the list goes on. A cron job would also be useful to delete old
>records.
>
>ron
>
>
>
> > Thanks Bob that's the kind of thing I was thinking about.
> >
> > Leon's suggestion about altering the URL and tracking via a "fake log file
> > using Apache" is probably a good one if I had that kind of server access.
>In
> > fact I was reading an article: http://www.alistapart.com/stories/urls/
>about
> > just that kind of thing.
> >
> > Anyway, I've got a few more things to be getting on with before that so
> > thanks again.
> >
> > Nick
> >
>
>
>
>
>------------------------------------------------------------
>To subscribe:    [EMAIL PROTECTED]
>To unsubscribe:  [EMAIL PROTECTED]
>Site:            http://www.working-dogs.com/freetrade/
>Problems?:       [EMAIL PROTECTED]

bye
Bob Hutchinson
[EMAIL PROTECTED]



------------------------------------------------------------
To subscribe:    [EMAIL PROTECTED]
To unsubscribe:  [EMAIL PROTECTED]
Site:            http://www.working-dogs.com/freetrade/
Problems?:       [EMAIL PROTECTED]

Reply via email to