source: trollforge/lastmeasure/stats/get.php @ 618

Revision 201, 1.6 KB checked in by Jmax, 7 years ago (diff)

LMX added

Line 
1<?php
2include('../include/db.php');
3
4$items = Array();
5$timestamp = $_GET["timestamp"];
6// when 0, select last 20.  when 1+, select since timestamp.
7$id = dba_open('../db/hit.db', 'r', 'db4');
8if (!$id) {
9  return "[ {\"ip\":\"ERROR: unable to read from database\",\"timestamp\":\"\",\"ua\":\"\",\"ref\":\"\",\"user\":\"\",\"clip\":\"\"}]";
10}
11$key = dba_firstkey($id);
12if ($key == false) {
13  return "[ {\"ip\":\"ERROR: no hits found in database\",\"timestamp\":\"\",\"ua\":\"\",\"ref\":\"\",\"user\":\"\",\"clip\":\"\"}]";
14}
15while (1) {
16  $n++;
17  $date = key2date($key);
18  if (($n > 20) || ($timestamp >= $date)) { 
19    break;
20  } 
21  $val = dba_fetch($key, $id);
22  list($ip, $port, $host, $uagent,
23       $referer, $user, $clipboard) = explode(' ', $val);
24  $uagent = base64_decode($uagent);
25  $uagent = htmlspecialchars($uagent);
26  $referer = base64_decode($referer);
27  $referer = htmlspecialchars($referer);
28  $user = base64_decode($user);
29  $user = htmlspecialchars($user);
30  $clipboard = base64_decode($clipboard);
31  $clipboard = htmlspecialchars($clipboard);
32  $date = date('D, d M Y H:i:s', $date);
33  $data = array("ip" => $ip,
34                "timestamp" => $date,
35                "ua" => $uagent,
36                "ref" => $referer,
37                "user" => $user,
38                "clip" => $clipboard,
39                );
40  $rv = "{";
41  $lines = array();
42  foreach ($data as $key => $val) {
43    $txt = '"' . $key . '":"' . $val . '"';
44    array_push($lines, $txt);
45  }
46  $rv .= join($lines, ',');
47  $rv .= "}";
48  array_push($items, $rv);
49  $key = dba_nextkey($id);
50}
51dba_close($id);
52$items = array_reverse($items);
53print "[ " . join($items, ", ") . " ]";
54?>
Note: See TracBrowser for help on using the repository browser.