diff options
author | Nils Adermann <naderman@naderman.de> | 2010-03-02 01:05:41 +0100 |
---|---|---|
committer | Nils Adermann <naderman@naderman.de> | 2010-03-02 01:05:41 +0100 |
commit | 723e38ece20f7a7a3611b86a4feafeb28560ce02 (patch) | |
tree | 705f26afa4b1ff84f830bec9545ab1b8e9479305 /phpBB/includes/functions_admin.php | |
parent | 6ebc26e330d5e204eab0ac9061bb5817534047fe (diff) | |
parent | 199bb1366018c61fe9c140d711369a92d576e757 (diff) | |
download | forums-723e38ece20f7a7a3611b86a4feafeb28560ce02.tar forums-723e38ece20f7a7a3611b86a4feafeb28560ce02.tar.gz forums-723e38ece20f7a7a3611b86a4feafeb28560ce02.tar.bz2 forums-723e38ece20f7a7a3611b86a4feafeb28560ce02.tar.xz forums-723e38ece20f7a7a3611b86a4feafeb28560ce02.zip |
Merge commit 'release-3.0.6-RC4'
Diffstat (limited to 'phpBB/includes/functions_admin.php')
-rw-r--r-- | phpBB/includes/functions_admin.php | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/phpBB/includes/functions_admin.php b/phpBB/includes/functions_admin.php index c0db64dbfb..92dcf60ee0 100644 --- a/phpBB/includes/functions_admin.php +++ b/phpBB/includes/functions_admin.php @@ -2549,17 +2549,24 @@ function view_log($mode, &$log, &$log_count, $limit = 0, $offset = 0, $forum_id return; } - $keywords = preg_split('#[\s+\-|*()]+#u', utf8_strtolower(preg_quote($keywords, '#')), 0, PREG_SPLIT_NO_EMPTY); + // Use no preg_quote for $keywords because this would lead to sole backslashes being added + // We also use an OR connection here for spaces and the | string. Currently, regex is not supported for searching (but may come later). + $keywords = preg_split('#[\s|]+#u', utf8_strtolower($keywords), 0, PREG_SPLIT_NO_EMPTY); $sql_keywords = ''; if (!empty($keywords)) { - $keywords_pattern = '#' . implode('|', $keywords) . '#ui'; + $keywords_pattern = array(); + + // Build pattern and keywords... for ($i = 0, $num_keywords = sizeof($keywords); $i < $num_keywords; $i++) { + $keywords_pattern[] = preg_quote($keywords[$i], '#'); $keywords[$i] = $db->sql_like_expression($db->any_char . $keywords[$i] . $db->any_char); } + $keywords_pattern = '#' . implode('|', $keywords_pattern) . '#ui'; + $operations = array(); foreach ($user->lang as $key => $value) { |