<?php
// Script: Find Phrase in Logfile
// Author: Stephen Lance
// Homepage: http://stephen.calvarybucyrus.org
// Email: pksml@netscape.net
// Version: 1.0
// Release Date: Monday, July 10, 2006
header("Cache-Control: no-cache");
// Browser will always get current results
// Get variables from the query string
$file = $_GET['file'];
$phrase = $_GET['phrase'];
if ($_GET['file']) {$file =
urldecode($_GET['file']);
} if ($_GET['phrase']) {$phrase =
urldecode($_GET['phrase']);
}
// Default File, if none specified in the query string
// This file should be your server's logfile
if (!
$_GET['file']) {$file = c:/progra~
1/abyssw~
1/
log/access.
log";} // Default phrase to search for, if not specified in the query string
if (!$_GET['phrase']) {$phrase = "google";}
$lines = file($file); // Get logfile into $lines array.
$num = count($lines); // Count number of array entries
echo "<PRE>";
print "Logfile: <b>$file</b>\n";
print "Lines: <b>$num</b>\n\n";
print "Phrase: \"<b>$phrase</b>\"\n";
print "Usage: <a href=\"".
$_SERVER['PHP_SELF'].
"?file=/website/log/cbc-access.log&phrase=".
date(d
).
"/".
date(M
).
"/".
date(Y
).
"\">";
print $_SERVER['PHP_SELF'].
"?file=/website/log/cbc-access.log&phrase=".
date(d
).
"/".
date(M
).
"/".
date(Y
).
"</a>\n\n\n";
$number = 0;
foreach ($lines as $line_num => $line)
{
if (preg_match("|$phrase|",
$line)) {echo "$line";
$number =
$number +
1;
} }
echo "\n<P>Number of occurrences: <B>$number</B></P>";
?>