summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2005-04-08 14:24:03 +0000
committerDries Buytaert <dries@buytaert.net>2005-04-08 14:24:03 +0000
commit47f1f7f90ab4a3bb64bed4de6a4b9e3f312d470c (patch)
treec084ba4eb44a7812a2809d2f548d4da8841a9747
parente722f0df586b8dcd325b32b6626d943a4e5b4433 (diff)
downloadbrdo-47f1f7f90ab4a3bb64bed4de6a4b9e3f312d470c.tar.gz
brdo-47f1f7f90ab4a3bb64bed4de6a4b9e3f312d470c.tar.bz2
- Patch #19609 by Daniel: fix problem with database prefixing
-rw-r--r--includes/database.inc17
1 files changed, 12 insertions, 5 deletions
diff --git a/includes/database.inc b/includes/database.inc
index fc6d9d754..06d150d30 100644
--- a/includes/database.inc
+++ b/includes/database.inc
@@ -60,17 +60,24 @@ function db_prefix_tables($sql) {
global $db_prefix;
if (is_array($db_prefix)) {
- $prefix = $db_prefix['default'];
- foreach ($db_prefix as $key => $val) {
- if ($key !== 'default') {
+ if (array_key_exists('default', $db_prefix)) {
+ $tmp = $db_prefix;
+ unset($tmp['default']);
+ foreach ($tmp as $key => $val) {
$sql = strtr($sql, array('{'. $key. '}' => $val. $key));
}
+ return strtr($sql, array('{' => $db_prefix['default'], '}' => ''));
+ }
+ else {
+ foreach ($db_prefix as $key => $val) {
+ $sql = strtr($sql, array('{'. $key. '}' => $val. $key));
+ }
+ return strtr($sql, array('{' => '', '}' => ''));
}
}
else {
- $prefix = $db_prefix;
+ return strtr($sql, array('{' => $db_prefix, '}' => ''));
}
- return strtr($sql, array('{' => $prefix, '}' => ''));
}
/**