Search results:\n"; echo "You searched for $_POST[type]"; /** beginning of query **/ $query = "SELECT * FROM searchy "; /** what kind of query? **/ switch($_POST[kind]) { case "exact": /** exact string **/ $query .= sprintf("WHERE %s='%s' AND channel REGEXP '%s$' ", mysql_real_escape_string($_POST[type]), mysql_real_escape_string($_POST[terms]), mysql_real_escape_string($_POST[channel])); echo " $_POST[terms]"; break; case "regexp": /** regular expression **/ $query .= sprintf("WHERE %s REGEXP '%s' AND channel REGEXP '%s$' ", mysql_real_escape_string($_POST[type]), mysql_real_escape_string($_POST[terms]), mysql_real_escape_string($_POST[channel])); echo "s that match the regular expression $_POST[terms]"; break; default: /** unknown -- possibly malformed request **/ die("That option was not valid. Please select a different kind of search, or report this error to your systems administrator."); } $datestart = strtotime($_POST[startdate]); $datestart = unixtojd($datestart); $datestart -= 2444239; $datestop = strtotime($_POST[stopdate]); if ($_POST[stopdate] = "") $datestop == $time; $datestop = unixtojd($datestop); $datestop -= 2444239; echo("
$datestart
"); if($_POST[startdate] != "") echo " starting on $_POST[startdate] and "; if($_POST[stopdate] != "") echo "ending on $_POST[stopdate]"; if($_POST[channel] != "") echo " in channel $_POST[channel]."; else echo "."; /** $query .= "AND mdate >; **/ /** order by date **/ $query .= "ORDER BY mdate"; /** start table **/ echo "\n"; /** query it! **/ echo("$query
"); $result = mysql_query($query) or die(mysql_error()); /** fetch the results **/ //$query_loop = "SELECT * FROM searchy WHERE increment > $fstart AND increment < $fstop ORDER BY mdate"; //$result = mysql_query($query_loop) or die(mysql_error()); while($row_outer = mysql_fetch_array($result)) { //new stuff! lets loop through and get context... maybe $fstart = $row_outer[increment] - 5; $fstop = $row_outer[increment] + 5; if($fstart < 0) $fstart = 1; $query_loop = "SELECT * FROM searchy WHERE increment > $fstart AND increment < $fstop ORDER BY mdate"; echo ($query_loop); $result = mysql_query($query_loop) or die(mysql_error()); while($row = mysql_fetch_array($result)) { $daycount = $row[mdate]; $daycount = intval($daycount); $daycount +=2444240; $i = 1 / 24; $tz = intval($_POST[tzoffset]); $daycount +=($i * $tz); $date = jdtogregorian($daycount); $time = $row[mdate]; $time += ($i * $tz); $i = intval($time); $time -= $i; $time *= 86400; $secs = $time; $mins = $secs / 60; $mins = intval($mins); $secs -= ($mins * 60); $secs = intval($secs); $hrs = $mins / 60; $hrs = intval($hrs); $mins -= ($hrs * 60); $htmlrow = sprintf("\n", $date, $hrs, $mins, $secs, $row[channel], $row[nick], htmlspecialchars($row[message])); if ($row[mdate] > $datestart) echo($htmlrow); }; }; echo "
[%s %02s:%02s:%02s] %s <%s> %s
\n"; //echo($query); } else { echo "