From 4d9b106db2ccc6e15b4afd3fc2e69cf37fae81cf Mon Sep 17 00:00:00 2001 From: Meik Sievertsen Date: Sat, 11 Apr 2009 11:09:45 +0000 Subject: New search option: Maximum number of words allowed to search for. (the more words the more database load) git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9438 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/search/fulltext_mysql.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'phpBB/includes/search/fulltext_mysql.php') diff --git a/phpBB/includes/search/fulltext_mysql.php b/phpBB/includes/search/fulltext_mysql.php index 2a67b58246..e1e7951367 100644 --- a/phpBB/includes/search/fulltext_mysql.php +++ b/phpBB/includes/search/fulltext_mysql.php @@ -118,7 +118,7 @@ class fulltext_mysql extends search_backend */ function split_keywords(&$keywords, $terms) { - global $config; + global $config, $user; if ($terms == 'all') { @@ -167,6 +167,12 @@ class fulltext_mysql extends search_backend $this->split_words = $matches[1]; } + // We limit the number of allowed keywords to minimize load on the database + if ($config['max_num_search_keywords'] && sizeof($this->split_words) > $config['max_num_search_keywords']) + { + trigger_error($user->lang('MAX_NUM_SEARCH_KEYWORDS_REFINE', $config['max_num_search_keywords'], sizeof($this->split_words))); + } + // to allow phrase search, we need to concatenate quoted words $tmp_split_words = array(); $phrase = ''; -- cgit v1.2.1