aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/db/firebird.php
diff options
context:
space:
mode:
authorDavid M <davidmj@users.sourceforge.net>2007-07-05 15:45:24 +0000
committerDavid M <davidmj@users.sourceforge.net>2007-07-05 15:45:24 +0000
commitd3468832bb07b535d679b067f2567621721f8769 (patch)
tree8759c9360eb70c950ea88789d5d0de92f31a7cf7 /phpBB/includes/db/firebird.php
parent93f8e8c293e39435dd72a4f1ea202ebd36c28ac3 (diff)
downloadforums-d3468832bb07b535d679b067f2567621721f8769.tar
forums-d3468832bb07b535d679b067f2567621721f8769.tar.gz
forums-d3468832bb07b535d679b067f2567621721f8769.tar.bz2
forums-d3468832bb07b535d679b067f2567621721f8769.tar.xz
forums-d3468832bb07b535d679b067f2567621721f8769.zip
#13033
git-svn-id: file:///svn/phpbb/trunk@7835 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/db/firebird.php')
-rw-r--r--phpBB/includes/db/firebird.php8
1 files changed, 4 insertions, 4 deletions
diff --git a/phpBB/includes/db/firebird.php b/phpBB/includes/db/firebird.php
index d9200ee182..af8d523ab1 100644
--- a/phpBB/includes/db/firebird.php
+++ b/phpBB/includes/db/firebird.php
@@ -118,7 +118,7 @@ class dbal_firebird extends dbal
{
if (strlen($regs[3]) > 32767)
{
- preg_match_all('/\'(?:[^\']++|\'\')*+\'|\\d+/', $regs[3], $vals, PREG_PATTERN_ORDER);
+ preg_match_all('/\'(?:[^\']++|\'\')*+\'|[\d-.]+/', $regs[3], $vals, PREG_PATTERN_ORDER);
$inserts = $vals[0];
unset($vals);
@@ -135,13 +135,13 @@ class dbal_firebird extends dbal
$query = $regs[1] . '(' . $regs[2] . ') VALUES (' . implode(', ', $inserts) . ')';
}
}
- else if (preg_match('/^(UPDATE ([\\w_]++)\\s+SET )([\\w_]++\\s*=\\s*(?:\'(?:[^\']++|\'\')*+\'|\\d+)(?:,\\s*[\\w_]++\\s*=\\s*(?:\'(?:[^\']++|\'\')*+\'|\\d+))*+)\\s+(WHERE.*)$/s', $query, $data))
+ else if (preg_match('/^(UPDATE ([\\w_]++)\\s+SET )([\\w_]++\\s*=\\s*(?:\'(?:[^\']++|\'\')*+\'|\\d+)(?:,\\s*[\\w_]++\\s*=\\s*(?:\'(?:[^\']++|\'\')*+\'|[\d-.]+))*+)\\s+(WHERE.*)$/s', $query, $data))
{
if (strlen($data[3]) > 32767)
{
$update = $data[1];
$where = $data[4];
- preg_match_all('/(\\w++)\\s*=\\s*(\'(?:[^\']++|\'\')*+\'|\\d++)/', $data[3], $temp, PREG_SET_ORDER);
+ preg_match_all('/(\\w++)\\s*=\\s*(\'(?:[^\']++|\'\')*+\'|[\d-.]++)/', $data[3], $temp, PREG_SET_ORDER);
unset($data);
$cols = array();
@@ -164,7 +164,7 @@ class dbal_firebird extends dbal
}
}
- if (!function_exists('ibase_affected_rows') && (preg_match('/^UPDATE ([\w_]++)\s+SET [\w_]++\s*=\s*(?:\'(?:[^\']++|\'\')*+\'|\d+)(?:,\s*[\w_]++\s*=\s*(?:\'(?:[^\']++|\'\')*+\'|\d+))*+\s+(WHERE.*)$/s', $query, $regs) || preg_match('/^DELETE FROM ([\w_]++)\s*WHERE\s*(.*)$/s', $query, $regs)))
+ if (!function_exists('ibase_affected_rows') && (preg_match('/^UPDATE ([\w_]++)\s+SET [\w_]++\s*=\s*(?:\'(?:[^\']++|\'\')*+\'|[\d-.]+)(?:,\s*[\w_]++\s*=\s*(?:\'(?:[^\']++|\'\')*+\'|[\d-.]+))*+\s+(WHERE.*)$/s', $query, $regs) || preg_match('/^DELETE FROM ([\w_]++)\s*WHERE\s*(.*)$/s', $query, $regs)))
{
$affected_sql = 'SELECT COUNT(*) as num_rows_affected FROM ' . $regs[1] . ' ' . $regs[2];