$fn)
{
if (!isset($events[$name]))
$events[$name] = array();
$events[$name][] = $fn;
}
}
}
}
closedir($handle);
}
$db = mysqli_connect($mysql_server, $mysql_username, $mysql_password);
if (!$db)
{
die('Failed to connect to database server!
'.mysqli_error($db));
}
mysqli_select_db($db, $mysql_database) or die('Failed to select database
'.mysqli_error($db));
mysqli_query($db, 'SET NAMES "UTF8"');
mysqli_query($db, "SET collation_connection='utf8_general_ci'");
mysqli_query($db, "SET collation_server='utf8_general_ci'");
mysqli_query($db, "SET character_set_client='utf8'");
mysqli_query($db, "SET character_set_connection='utf8'");
mysqli_query($db, "SET character_set_results='utf8'");
mysqli_query($db, "SET character_set_server='utf8'");
mysqli_set_charset($db, 'utf8');
$id = isset($_REQUEST['page']) ? mysqli_real_escape_string($db, $_REQUEST['page']) : '';
$query = isset($_REQUEST['query']) ? $_REQUEST['query'] : '';
if (!empty($query))
{
$query = addslashes($query);
$words = preg_split('/\s+/', $query);
foreach ($words as $word)
{
$word = preg_replace('/\W/u', '', $word);
if (strlen($word) > 1)
{
$terms[] = $word;
}
}
if ($terms)
{
if (count($terms) > 4)
{
array_splice($terms, 4);
}
$sql = "SELECT p.id, p.name, p.content FROM " . $mysql_table . "PAGES p, " . $mysql_table . "SEARCH_WORDS w, " . $mysql_table . "SEARCH_WORDMATCH m WHERE(";
$where = "w.word LIKE '%" . array_shift($terms) . "%'";
while ($term = array_shift($terms))
{
$where .= " OR w.word LIKE '%" . $term . "%'";
}
$sql .= $where . ") AND m.word_id = w.id AND m.page_id = p.id AND p.visible = 1 GROUP BY p.id ORDER BY p.last_update_date DESC";
$result = mysqli_query($db, $sql) or die(mysqli_error($db));
if ($num_rows = mysqli_num_rows($result))
{
$cms_content .= "