aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/db/dbal.php
diff options
context:
space:
mode:
authorMeik Sievertsen <acydburn@phpbb.com>2007-06-23 12:16:20 +0000
committerMeik Sievertsen <acydburn@phpbb.com>2007-06-23 12:16:20 +0000
commit318418b0f266998895f88e9fcbcd3873a518c4b5 (patch)
tree7fb1714171d4744d4df35138da1a3e799f28db90 /phpBB/includes/db/dbal.php
parent1e2db705ca061228ddedd312e00d99cfce2a2ae6 (diff)
downloadforums-318418b0f266998895f88e9fcbcd3873a518c4b5.tar
forums-318418b0f266998895f88e9fcbcd3873a518c4b5.tar.gz
forums-318418b0f266998895f88e9fcbcd3873a518c4b5.tar.bz2
forums-318418b0f266998895f88e9fcbcd3873a518c4b5.tar.xz
forums-318418b0f266998895f88e9fcbcd3873a518c4b5.zip
new wrapper for LIKE expressions to streamline the fixes. We actually need to adjust them for different DBMS as well as SQLite2 not supporting escaping characters in LIKE statements (which is a reason why we think about dropping sqlite support completely).
git-svn-id: file:///svn/phpbb/trunk@7788 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/db/dbal.php')
-rw-r--r--phpBB/includes/db/dbal.php15
1 files changed, 15 insertions, 0 deletions
diff --git a/phpBB/includes/db/dbal.php b/phpBB/includes/db/dbal.php
index 8ecb7627e5..141a7cb71e 100644
--- a/phpBB/includes/db/dbal.php
+++ b/phpBB/includes/db/dbal.php
@@ -192,6 +192,21 @@ class dbal
}
/**
+ * Correctly adjust LIKE expression for special characters
+ * Some DBMS are handling them in a different way we need to take into account
+ */
+ function sql_like_expression($expression)
+ {
+ // Standard for most DBMS
+ if (strpos($expression, '_') === false)
+ {
+ return 'LIKE \'' . $this->sql_escape($expression) . '\'';
+ }
+
+ return 'LIKE \'' . $this->sql_escape(str_replace('_', "\_", $expression)) . '\'';
+ }
+
+ /**
* SQL Transaction
* @access private
*/